Diferențele dintre clasa abstractă și interfață în Java
în Java, abstractizarea se realizează folosind clase abstracte și interfețe. Ambele conțin metode abstracte pe care o clasă de copii sau o clasă de implementare trebuie să le implementeze. În urma sunt importante diferențele dintre clasa abstractă și o interfață.
Sr. Nr., | Tasta | Clasă Abstractă | Interfață |
---|---|---|---|
1 | Metode Acceptate | clasă Abstractă poate avea atât un rezumat, precum și metode concrete. | interfața poate avea doar metode abstracte. Java 8 înainte, poate avea metode implicite, precum și metode statice., |
2 | Multiple Inheritance | Multiple Inheritance is not supported. | Interface supports Multiple Inheritance. |
3 | Supported Variables | final, non-final, static and non-static variables supported. | Only static and final variables are permitted., |
4 | Implementation | Abstract class can implement an interface. | Interface can not implement an interface, it can extend an interface. |
5 | Keyword | Abstract class declared using abstract keyword. | Interface is declared using interface keyword., |
6 | Moștenire | clasă Abstractă nu poate moșteni o altă clasă se extinde folosind cuvinte cheie și să pună în aplicare o interfață. | interfață poate moșteni doar o inteface. |
7 | Moștenire | clasă Abstractă poate fi moștenită se extinde folosind cuvinte cheie. | interfață poate fi implementată numai folosind implementează cuvinte cheie., |
8 | Access | Abstract class can have any type of members like private, public. | Interface can only have public members. |
Example of Abstract Class vs Interface
JavaTester.java
Output
Tiger eatsLion eats
Published on 26-Nov-2019 14:37:07
Advertisements