面向對象——類的成員之方法

面向對象——類的成員之方法
方法的定義
權限修飾符 返回值類型 方法名(參數列表){     方法體     }
如果有返回值,則是返回值數據類型;如果沒有返回值,則返回值類型爲void。
另外在方法中的變量是局部變量,局部變量是沒有默認的初始值的。而前一節中的成員變量如果不賦初值,它的值就是該數據類型的默認值
補充:在這裏特別想提出一點:關於 return的作用 和 void
           人們常常說有void就不能有return,但其實並不完全是這樣。請看這個簡單的例子:
public void test(){
int a=0;
int b=10;
System.out.println(a+b);
return;//return的作用是結束這個方法的執行。
}
所以在這裏說說return的作用:
1.當函數有返回值時,”return   返回值”;
2.當方法遇到某些情況,程序員想要結束這個方法時 可以用“return;”來結束這個方法,就算是該方法爲void也可以,因爲在這裏並沒有返回值。

方法的調用

1.如果此方法是本類中的普通方法/靜態方法,則在本類的普通方法中可以直接調用。如:findWork();

2.如果類A在類B中創建了對象aa,則調用類A中的findWork()方法就需要aa.findWork();

3.靜態方法的調用方式除了第二種方式,還有一種是類名.findWork();

方法的重寫與重載

重載:在同一個類中定義多個方法,這些方法方法名相同,參數列表不同。這些方法就稱爲方法的重載

重寫:子類中有和父類“一樣“的方法,一樣指的是方法參數相同,形參列表相同。重寫最基本條件就是要有類的繼承,在繼承的基礎上,才能談重寫。

重寫規則:兩同兩小一大

  1. 兩同:方法名相同,參數列表相同
  2. 兩小:異常要比父類中的方法要小或者相同
  3. 返回值類型要比父類中的方法小或者相同(基本類型必須相同)
  4. 一大:訪問權限要比父類中的方法要大或者相同
  5. 子父類方法同爲static或非static
重載規則:方法名相同,參數列表不同

  1. 不看返回值以及返回值是否相同
  2. 與形參名無關
  3. 參數列表:參數類型+參數個數

個人覺得理解重載最好的方式就是:想想調用這個方法的時候,因爲調用時只要給出方法名和參數就能確定調用的方法是哪一個。所以形參名沒有任何區別意義。另外關於返回值類型,調用方法時根本就不關心返回值,只關心執行的是不是想要的方法。因此只要記住核心方法名相同,形參列表不同即可。

另外關於Java的封裝特性,方法的存在就是把某一個功能封裝,通過調用這個方法來實現這個功能。我在最開始學Java的時候習慣性的把所有的代碼都放在main函數裏,這樣的習慣可能很方便,但是難以閱讀,後來才慢慢的對代碼進行封裝,形成模塊。







發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章