JAVA型別的問題
-
public class Test {
-
public void test(Object obj) {
-
System.out.println("Object");
-
}
-
-
public void test(String str) {
-
System.out.println("String");
-
}
-
-
public static void main(String[] args) {
-
Test t = new Test();
-
t.test(null);
-
}
- }
求輸出的結果。
我一開始認為會在編譯期間報異常,但是回家測試的結果居然是"String"。
確實有點意思。
如果再增加一個類似的方法,就可以出現編譯期異常了。
函式過載的兩個型別有繼承關係,如果不能確定呼叫哪個函式的時候,都會交給子類。
函式過載有三個型別,其中兩個繼承自一個類,那麼就徹底不能確定呼叫的函式了。所以編譯異常。
-
public class Test {
-
public void test(Animal animal) {
-
System.out.println("Animal");
-
}
-
-
public void test(Cat cat) {
-
System.out.println("Cat");
-
}
-
-
public static void main(String[] args) {
-
Test test = new Test();
-
test.test(null);
-
//顯示 Cat
-
}
-
}
-
-
class Animal {
-
}
-
-
class Cat extends Animal {
- }
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29254281/viewspace-1127386/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Java泛型型別擦除問題Java泛型型別
- Treasure Of JAVA——JAVA的資料型別(JAVA面試題)Java資料型別面試題
- 好程式設計師Java教程分享Java中String型別的10個問題程式設計師Java型別
- 深入理解 JavaScript 中的型別和型別判斷問題JavaScript型別
- java高階用法之:JNA型別對映應該注意的問題Java型別
- [20231013]CLOB型別的編碼問題.txt型別
- 處理分頁的result型別問題型別
- Java將引入新的物件型別來解決記憶體利用問題Java物件型別記憶體
- Java的基本型別和引用型別Java型別
- tp5.0 的模型型別轉換問題模型型別
- Double型別轉換成BigDicimal問題型別
- String型別函式傳遞問題型別函式
- 日期型別有問題,如何解決?型別
- PHP弱型別安全問題總結PHP型別
- 陣列(引用型別)複製問題陣列型別
- 問題分享:Js引用型別賦值JS型別賦值
- 關於int型別數值的運算問題型別
- 問題:JSON的格式型別到底有哪些呢?JSON型別
- 陣列轉json後的資料型別問題陣列JSON資料型別
- Java中的型別提升Java型別
- long資料型別跨平臺問題資料型別
- java- 型別-轉換:基本型別以及包裝型別的轉換Java型別
- java基本型別和包裝型別的“==”和equals()方法Java型別
- 區間問題(非DP型別)及變形型別
- 小計:引用型別記憶體分配問題型別記憶體
- java中的型別轉換Java型別
- Java的基本資料型別Java資料型別
- java中的列舉型別Java型別
- Java中的資料型別Java資料型別
- Java中建立泛型型別的例項Java泛型型別
- [轉載] 詳解 MySQL int 型別的長度值問題MySql型別
- 【轉載】詳解 MySQL int 型別的長度值問題MySql型別
- Java資料型別及型別轉換Java資料型別
- Oracle資料型別對應Java型別Oracle資料型別Java
- Java™ 教程(泛型原始型別)Java泛型型別
- Java中的基本資料型別與引用資料型別Java資料型別
- Java異常型別Java型別
- Java資料型別Java資料型別
- 初探Java型別擦除Java型別