2014-09-30 113 views
-2

我正在使用Oracle Page教程學習Java。覆蓋和隱藏方法

感謝,

public class Animal { 
    public static void testClassMethod() { 
     System.out.println("The static method in Animal"); 
     } 
     public void testInstanceMethod() { 
     System.out.println("The instance method in Animal"); 
     } 
    } 

    public class Cat extends Animal { 
    public static void testClassMethod() { 
     System.out.println("The static method in Cat"); 
    } 
    public void testInstanceMethod() { 
     System.out.println("The instance method in Cat"); 
    } 

    public static void main(String[] args) { 
     Cat myCat = new Cat(); 
     Animal myAnimal = myCat; 
     Animal.testClassMethod(); 
     myAnimal.testInstanceMethod(); 
    } 
} 

任何人可以,給我解釋一下什麼是語句的含義:

動物myAnimal = myCat;

感謝,

+1

也許你是否真的從控制檯輸出中運行了你能理解的代碼。 – user1071777 2014-09-30 17:37:58

+2

**你認爲這意味着什麼?給我們你最好的猜測。 – 2014-09-30 17:40:33

+2

歡迎來到堆棧溢出。請花點時間熟悉Stack Overflow [幫助文件](http://stackoverflow.com/help),它可以幫助您瞭解適合本網站的哪些類型的問題。本網站旨在幫助您獲得*特定編程問題*的答案,而不是提供輔導。 – MarsAtomic 2014-09-30 17:42:25

回答

0

Cat延伸Animal,對不對?所以,每個Cat IS-A Animal。這意味着,Cat的每個實例也是Animal的實例。因此,您可以將myCat分配給類型爲Animal的變量myAnimal