我很困惑在Java中調度方法。爲什麼第一個方法「a.m1(b)」調用A類? 調用變量是a。它的運行時類型是B,不是嗎? class A {
public void m1(A a){
System.out.println("A-m1");
}
public void m1(){
System.out.println("A-m1");
}
我試圖擴展AbstractMap來創建一個MapTreeNode類(一個樹節點,其中子項通過鍵而不是索引來訪問)。 我已經有越來越一套工作正常孩子的方法: public class MapTreeNode<K,V> implements Map.Entry<K,V> {
private Map<K,MapTreeNode<K,V>> children = new HashMap<K,Ma
說我有該擴展java.lang.Object如下一類: package pack;
public class Person {
}
和以下三個實例: Object one = new Object();
Object two = new Person();
Person three = new Person();
爲了要確定運行時間類型,我只需要在實例上調用getClass()