本文目錄一覽:
java 中類與類之間關係,並舉例說明…並說下什麼是面向對象.
1.類是面向對象程序設計的核心,其實是一種複雜的數據類型,封裝了不同類型的數據和與這些數據相關的方法。
2.類是抽象的(相當於現實生活中的模具,圖紙),並不是最終的實體,將抽象化的類具體化後(就是按照模具,圖紙生產出實際東西),就成了對象,通常將對象稱為類的實體。
所以,類是將現實事物抽象化,而對象是將事物具體化。
舉例:張三是一個學生,那麼張三其實是比較具體的一個人,而學生則是一個抽象事物。此時可以創建一個學生類,包含學號,年齡,班級等。如果指明張三這些屬性,則張三是學生類的一個實體。
創建學生類:student
public
class
student{
public
string
studentno;
public
int
age;
public
string
grade;
}
這就是一個類,一個模具。
通過這個模具,可以生產出來很多產品:
student
zhang
=
new
student();
這句代碼,即為創建了一個對象:zhang
希望lz能夠通過這個實例,搞懂對象、類和實體之間的關係。
Java中類與類之間的關係是什麼?
外部類,內部類,匿名類,外部類就是兩個類並列的class
A
{}
class
B
{},內部類:class
A
{
class
B
{}},B可以直接使用包涵它的類的成員變量,內部類不能被除包涵類以外的類調用;還有就是匿名類,也是內部類
classA{new
{}}省略定義類名直接定義方法和使用,這個適用於代碼比較簡單且這個啊類不需要被其他類調用
java中類與類之間的關係講解
1.關聯
關聯即對象與對象之間的連接。java類之間的關聯是一個類的作為另一個的屬性被定義,即「has-a」的關係。關聯又分為組合與聚合兩種。示例如下:
//兩個類之間的聚合public class Car{}public class Person{
private Car car;
}//兩個類之間的組合public class Car{}public class Person{
private Car car=new Car();//創建一個Car對象}123456789101112
關聯又分為單向關聯與雙向關聯,以上代碼為單向關聯(Person類關聯Car類),雙向關聯(Person類關聯Car類,同時Car類關聯Person類)代碼如下:
public class Car{
private Person per;
}public class Person{
private Car car;
}123456
類之間的關聯,可以一對一的關聯,也可以一對多的關聯。
2.依賴
依賴的具體表現是將一個類的對象當做方法參數傳給另一個類的方法,是一種use-a的關係。如:
public class Person{
public void dirve(Car car){
}
}1234
關聯與依賴的區別在於:關聯是has-a的關係,依賴是use-a的關係;而且關聯中Person關聯Car,只要Person類對象存在,Car對象就存在;依賴中只有Person類對象調用到dirve()方法時,Car對象才會被創建,方法執行結束後,Car對象就被收回。
3.繼承
類與類的另一個關係是繼承。繼承是一個類的定義基於另一個存在的類,即子類基於父類,如此可實現代碼的重用,子類能夠繼承父類可訪問的方法、屬性,並能擴展新的能力,而且子類可重寫父類方法以滿足子類需要。在繼承中子類可調用父類的構造方法,子類構造方法總是先調用父類的構造方法,而且默認情況下調用父類的無參構造方法,在子類構造方法的第一行使用super關鍵字即可調用父類構造方法。示例代碼如下:
public class Point {
private double x; private double y; public double getX() { return x;
} public void setX(double x) { this.x = x;
} public double getY() { return y;
} public void setY(double y) { this.y = y;
} //無參構造方法
public Point() {
} //有參構造方法
public Point(double x, double y) { this.x = x; this.y = y;
} //draw()方法
public void draw(){
}
}public class Circle extends Point {
private double r; public double getR() { return r;
} public void setR(double r) { this.r = r;
} //有參構造方法
public Circle(double x, double y) { super(x, y);
} public void draw() {
System.out.println(“半徑為:” + this.r + ” x坐標為:” + getX() + ” y坐標為:” + getY() + “的圓繪製成功!”);
}
}public class Test {
public static void main(String[] args) {
Circle circle = new Circle(2, 3);
circle.setR(3);
circle.draw();
}
}
Java類與類之間的關係
java類與類之間的關係,這個概念有點模糊,java編程時面向對象的,一個java實體類就是一個對象,如人,他的屬性是姓名,年齡、職業等。另外有一個實體類叫做動物,他包含人,鳥,魚等這個類中人就是動物的一種。這個他們之間就可以有關係。但是大部分的類其實是沒有必然聯繫的
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/304999.html