Зачем использовать интерфейсы, множественное наследование vs интерфейсы, преимущества интерфейсов?



У меня еще есть некоторая путаница по этому поводу. То, что я нашел до сих пор



(подобные вопросы уже задавались здесь, но у меня были некоторые другие моменты.)





  1. интерфейс-это набор только абстрактных методов и конечных полей.


  2. в Java нет множественного наследования.


  3. интерфейсы могут быть использованы для достижения множественного наследования в Java.


  4. одна сильная сторона наследования заключается в том, что мы можем использовать код базового класса в производном классе, не записывая его снова. Может быть это самое главное для наследования, чтобы быть там.





сейчас..




Q1. Поскольку интерфейсы имеют только абстрактные методы (без кода), как мы можем сказать, что если мы реализуем какой-либо интерфейс, то это наследование ? Мы не используем его код.



Q2. При реализации интерфейс не является наследованием, то как интерфейсы используются для достижения множественного наследования ?



Q3. В любом случае, в чем преимущество использования интерфейсов ? У них нет никакого кода. Нам нужно писать код снова и снова во всех классах, которые мы реализуем.




тогда зачем делать интерфейсы ?



Примечание : я нашел один случай, в котором интерфейсы полезны. Один из примеров этого, как в Runnable интерфейс у нас есть метод public void run (), в котором мы определяем функциональность потока и есть встроенное кодирование, что этот метод будет выполняться как отдельный поток. Поэтому нам просто нужно закодировать, что делать в потоке, Rest предварительно определен. Но эта вещь также может быть достигнута с помощью абстрактных классов и все.



тогда каковы точные преимущества использования интерфейсов? Действительно ли это множественное наследование, которое мы достигаем с помощью интерфейсов?

882   0  

Comments

    Ничего не найдено.