類和對象

類別和對象的關係:java

類是對同一類事物(對象)的抽象  對象實際存在的該類的各類實體。編程

面向對象編程的核心:找到合適的對象來作合適的事jvm

Java中如何來找到對象:函數

  1. sun 本身定義好的類 ,必須知道這個類
  2. 自定義的類  經過自定義的類來建立對象

類的格式:this

Class 類名 {對象

  1. 屬性(成員變量):描述對象的公共特性
  2. 方法:描述對象的公共行爲

 

}編譯器

如何經過類建立對象:虛擬機

類名  對象名 = new 類名();編譯

 

若是if 省略大括號  會將if下的第一個語句,做爲判斷的結果處理面向對象編程

 

 

匿名對象:沒有名字的對象

匿名對象的使用注意點:

  1. 通常不會用匿名對象給屬性賦值,沒法獲取屬性值
  2. 匿名對象永遠都不多是同一個對象

 

匿名對象的好處:書寫簡單

匿名對象的使用場景:

  1. 若是一個對象須要調用一個方法一次的時候,就能夠用匿名對象來調用
  2. 能夠做爲實際參數在方法中調用

 

 

在java中相似OC 中的初始化方法叫作構造方法

OC初始化方法的特色:

  1. 能夠在對象建立時初始化屬性值
  2. 初始化方法只能被調用一次

 

構造方法的做用:給對應的對象進行初始化,對象建立初始化屬性值

 

如何來建立構造方法:

格式:

修飾符 類名(參數列表){   };

 

構造方法使用注意點:

  1. 方法名和類名保持一致
  2. 構造方法時時沒人返回值得
  3. 構造方法 不是咱們手動調用的  而是對象被建立時由java 虛擬機調用的
  4. 若是一個類咱們沒有給他定義構造方法 jvm在編譯的時候會給這個類默認添加一個無參的構造方法
  5. 若是你本身定義構造方法  jvm就不會在建立無參的構造方法  這時候須要咱們本身定義一個無參的構造方法

 

Java 中的方法時能夠重命名的  咱們把這種重命的二分法叫作方法重載

方法重載的使用注意事項:

  1. 必須是方法名同樣,才能夠叫方法重載
  2. 任何方法均可以是實現方法的重載
  3. 保證參數列表的參數的順序或者個數不同

構造方法中是能夠調用普通方法的

在同一個類中,方法的調用直接拿到方法名調用就能夠了

 

構造代碼塊:

做用:給對象統一3初始化

 

 

構造代碼塊

構造代碼塊的做用:給對象統一初始化。

 

構造代碼塊的格式:

{

 

}

 

注意:構造代碼塊必須是寫在成員的位置上的

代碼塊:

  1. 構造代碼塊
  2. 局部代碼塊  寫在方法 中 也是以大括號來表示
  3. 靜態代碼塊
  4. 構造代碼塊是在對象被建立時執行的  是放在構造方法中執行的  構造方法中的代碼前面執行

 

構造代碼塊使用注意點:

  1. java 中編譯器編譯一個java 源文件時,會把成員變量的生命放在類的最前面
  2. 成員變量的初始化都是在構造方法中執行的
  3. 一旦通過java編譯器編譯後  別那麼構造代碼塊中的代碼會移到構造函數中執行
  4. 成員變量的顯示初始化和構造代碼塊 按照當前代碼的順序來執行  誰在後面就顯示誰

 

 

this : 表明所屬方法的調用對象。和OC 中的self很象。

this關鍵字的做用 :

  1. 若是成員變量和局部變量重名,在方法中時默認用局部變量,經過this可讓方法調用成員變量。
  2. 構造方法中是能夠調用構造方法的 :

構造方法中如何調用的?

this(參數);

使用注意點 :             

1.this調用構造方法,必須是構造方法中的第一個語句。

2.不要相互調用構造方法。

相關文章
相關標籤/搜索