2020-06-08

面向對象編程:

就是面向類來編程,有類才會有對象

類:

是具有相同屬性和行為的一個模板(它是一個抽象的概念)

對象:

他是一個具體的

如何創(chuàng)建一個對象(實例化)

語法? : 類名 引用變量名 = new 構造器也可以說是類名();

如何訪問對象中的屬性以及方法

語法:引用變量名.屬性名/引用變量名.方法名()

如果你想要使用哪個類中的方法,你就需要先創(chuàng)建類的對象,然后才能訪問此對象中的方法

構造器(構造方法)

規(guī)則:

構造方法的名稱要與類名相同

構造方法是沒有返回值類型的

如果一個類中沒有聲明任何顯示的構造方法,系統(tǒng)會默認提供一個無參數(shù)的構造方法

如果一個類中顯示的聲明了一個構造方法,系統(tǒng)就不再提供無參數(shù)的構造方法

語法:

public 類名 (參數(shù)列表){

}

構造器在實際中的作用:

構造器要以負責初始化的工作(初始化屬性,初始化對象)

this表示當前對象自身

如何調用構造方法:

使用new 構造器 (參數(shù))

繼承 (extends):

Java中的繼承表示擴展的概念,不同于顯示意義中的繼承

他主要體現(xiàn)現(xiàn)實世界中,事物之間一般類與特殊類之間的關系

可以理解:

一般的概念鬧含特殊的概念。判斷這個關系的時候可以用 IS A 的原則

B is a A (B是一種A) 這句話是成立的 B就是特殊的,A是一般的

X is a Y(X是一種Y)? 這句話是不成立的 ,因為不能判定兩者的關系

例如:

燕子是一種鳥? 這句話是成立的。燕子是特殊的。鳥是一般的。屬于繼承關系

? ? ? ? ? 班長是一種狗 這句話是不成立的。班長和狗是沒有任何關系的

在Java中如果想使用繼承的關系 一定要滿足IS A 原則

特殊類(子類)擁有一般類(父類、超類)的屬性和行為;

? ? ? 基本的語法:

public class B extends A {

? ? ? }

Java中只支持單繼承?

public class B extends A {}

關于Java中繼承的特點

1. 一個類只能有一個直接父類,就可以成為單繼承

2.一個類如果作為父類,那么子類的數(shù)量是沒有限制的

3.如果一個類沒有寫明顯示的父類,那么默認會繼承Object類//Object 對象

public class Test extends Object{}

Swallow? 繼承? ->? Bird? ? 繼承? ->? Object

子類構造方法的特點:

子類會調用父類構造方法的時候有以下三種情況

1.如果父類和子類都沒有顯式的聲明和構造方法,是沒有問題的

2.如果父類沒有顯式的聲明構造方法,而子類顯式的聲明了構造方法

3.如果父類顯式的聲明了一個構造方法,那么子類也一定要顯式的聲明構造方法

總結:

子類一定要在構造方法的第一行代碼中調用父類的構造方法super(),如果父類中有默認的無參數(shù)的構造方法,那么 子類super()式可以省略的(實際不是默認調用無參數(shù)的構造器)

調用父類中的構造器方法?

super(參數(shù)列表)

super 關鍵字

表示調用父類構造器的內容

可以訪問父類中的(屬性,方法,構造器)

屬性 super.屬性名

方法 super.方法名

構造器 :super(參數(shù)列表)

this關鍵字

表示調用自身的內容(屬性,方法,構造方法)

屬性:this.屬性

方法:this.方法名(參數(shù)列表)

構造器:this(參數(shù)列表)

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容