JavaRush /Java Blog /Random-TW /面試中的多態性
glu4it
等級 25
Харьков

面試中的多態性

在 Random-TW 群組發布
你好,親愛的爪哇人。當然,每個受訪的人都被問到有關多態性的問題。所以,我對你的回答以及面試官對你的回答的評價很感興趣。我進行了兩次小型面試,他們詢問了多態性,每次面試官都對我的回答不滿意。簡而言之,我的答案歸結為覆蓋父類別的引用並將其分配給子類別的物件。像這樣的東西:
面試中的多態性 - 1
class Parent{
    void saySomething(){
        System.out.println("Parent!");
    }
}
class Child1 extends Parent{
    @Override
    void saySomething(){
        System.out.println("Child1!");
    }
}

class Child2 extends Parent{
    @Override
    void saySomething(){
        System.out.println("Child2!");
    }
}

class Test{
    public static void main(String[] args){
        Parent p1 = new Parent();
        Parent p2 = new Child1();
        Parent p3 = new Child2();
        p1.saySomething();
        p2.saySomething();
        p3.saySomething();
    }
}
---------------
Output:
Parent!
Child1!
Child2!
這正是Oracle網站 上寫的。Ivan Golovach說,Java 中的多態性是透過繼承(我在範例中展示的)和泛型來實現的。那麼,面試時真相到底在哪裡,又該如何回答呢?我即將進行一次重要的採訪,我不想在這個看似基本的問題上再次搞砸。
留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION