3 回答

TA貢獻1808條經(jīng)驗 獲得超4個贊
從Oracle Docs報價:
定義:方法聲明的兩個組成部分包括方法簽名 -方法的名稱和參數(shù)類型。
由于對問題進行了編輯以包括以下示例:
public class Foo {
public int myMethod(int param) {}
public char myMethod(int param) {}
}
不,編譯器不會知道它們之間的區(qū)別,因為它們的簽名myMethod(int param)是相同的。第二行:
public char myMethod(int param) {}
會給你帶來錯誤:方法已經(jīng)在class中定義了,這進一步確認了上面的聲明。

TA貢獻1829條經(jīng)驗 獲得超7個贊
Java中的類方法簽名是否包含返回類型?
在Java中不是,但在此JVM中卻可以,這可能導(dǎo)致明顯的混亂。
Java中的接口方法簽名是否包含返回類型?
與類方法相同。
還是只有方法名稱和參數(shù)列表?
Java的方法名稱和參數(shù)類型。例如,參數(shù)注釋和名稱無關(guān)緊要。

TA貢獻2051條經(jīng)驗 獲得超10個贊
在字節(jié)碼級別,“返回類型”是方法簽名的一部分??紤]一下
public class Test1 {
public Test1 clone() throws CloneNotSupportedException {
return (Test1) super.clone();
}
}
在字節(jié)碼中有2個clone()方法
public clone()LTest1; throws java/lang/CloneNotSupportedException
public clone()Ljava/lang/Object; throws java/lang/CloneNotSupportedException
它們僅在返回類型上有所不同。
- 3 回答
- 0 關(guān)注
- 590 瀏覽
添加回答
舉報