Instantiating interfaces in Java

前端 未结 14 1538
南笙
南笙 2020-12-07 21:08

I have this interface:

public interface Animal {
    public void Eat(String name);
}

And this code here implements the interface:



        
相关标签:
14条回答
  • 2020-12-07 21:32

    No it is not - you are instantiating a Dog, but since a Dog is an Animal, you can declare the variable to be an Animal. If you try to instantiate the interface Animal it would be:

    Animal baby2 = new Animal();
    

    Try that, and watch the compiler scream in horror :)

    0 讨论(0)
  • 2020-12-07 21:36

    Here it is just referencing to the interface but instantiation is done by the class only. for e.g

    Animanl a = new Dog Animal a - variable is referenced new Dog - now Memory is allocated

    0 讨论(0)
提交回复
热议问题