Я недавно изучаю java, я пришел из PHP-фона. Я придерживаюсь концепции, которую я не совсем понял, поэтому у меня есть родительский класс, называемый (Animal) и дочерний класс (Wolf), из того, что я знаю, когда вы хотите создать новый экземпляр класс (Wolf), например, это код, который вы пишете:Стимуляция класса с использованием суперкласса и интерфейса
Wolf wolf1 = new Wolf();
Но в книгах я нашел этот второй путь, который также получить вам те же результаты:
Animal wolf1 = new Wolf();
вторая вещь, когда ты иметь интерфейс (назовем его (myInterface)), и класс (Wolf) реализует его, я нашел третий способ создания класса (Wolf):
myInterface wolf1 = new Wolf();
Вопросы: Почему это работает? и зачем это делать в первую очередь? есть ли простой пример, который дает понять, почему вы должны управлять своим классом с помощью второго и третьего способов?
Возможный дубликат [Что означает «программировать интерфейс»?] (http://stackoverflow.com/questions/383947/what-does-it-mean-to-program-to-an-interface) – Tom
«Волк» - это «Животное» (в качестве подкласса «Животное»), поэтому первый работает. Второй подобен, когда 'Wolf' реализует и интерфейс,' Wolf' становится также этим интерфейсом 'myInterface'. – innoSPG