日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java学习3之成员方法及函数重载

發布時間:2025/6/17 java 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java学习3之成员方法及函数重载 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

方法的定義:方法名稱,返回值,參數列表,修飾符(權限修飾符,final,static),實現體。

參考自:《Java 程序設計與工程實踐》

方法的簽名:

唯一區別其他方法的元素:(1)方法名稱;(2)參數類型列表(參數順序和類型)。這就是方法的簽名。

方法的簽名不包括方法的返回值。雖然每個重載方法可以有不同的返回類型,但返回類型并不足以區分所使用的是哪個方法。

example:(1)public void on(){}

public int on(){};這樣兩個方法編譯器依然認為是相同的方法,不可以同時定義在一個類中。

(2)pubic void on(){}

private void on(){};方法的修飾符不同,但編譯器認為是相同的方法,不可以定義在同一個類中。

(3)public void on(int a,int b){}

public void on(int b,int a){};僅僅是參數名稱不同。

?

重載:

一個類中相同方法名但參數類型列表不同的方法,即可稱為重載。

example:public class Light{

public void on(){}

public void on(int color){}

}

重載技術實際上更多是因為抽象和描述問題的需要存在的。如果都是開燈,但是僅僅是因為具體細節不同,而要申明多個不同名稱的函數,這樣整個代碼的可讀性就變差了。

example:

常用在控制臺中打印符號的System.out.println()打印函數。它有多種重載。

public void println();

public void println(boolean x);

public void println(char x);等等。

example:

構造函數使用重載函數,它可能是產生重載技術的原因。

public class Light{

public Light(){}

public Light(int color){}

public static void main(String[] args){

Light light = new Light();

Light light = new Light(10);}

}

new對象的時候,后面必須是類的名稱,再后面的括號表示調用構造函數,函數的參數類型列表唯一區分了調用的構造函數。

?

函數重載的設計問題:

重載不用刻意使用,在設計和編程過程中自然而然就會想到根據功能定義行為的名稱,相同功能的行為自然就定義相同的函數名稱。

example:

功能類似,函數接受的參數也相同。

public void on(int color);

public void on(int wattage);

在函數簽名上看似相同,但編譯器無法區分這兩個函數,出現編譯錯誤。

解決:將其中一個函數改名;

?

?

轉載于:https://www.cnblogs.com/benbencoding798/p/4726343.html

總結

以上是生活随笔為你收集整理的Java学习3之成员方法及函数重载的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。