Skillnader mellan abstrakt klass och gränssnitt i Java
i Java uppnås abstraktion med hjälp av abstrakta klasser och gränssnitt. Båda innehåller abstrakta metoder som en barnklass eller genomförandeklass måste genomföra. Följande är de viktiga skillnaderna mellan abstrakt klass och ett gränssnitt.
Sr.Nej., | nyckel | abstrakt klass | gränssnitt |
---|---|---|---|
1 | metoder som stöds | abstrakt klass kan ha både en abstrakt och konkreta metoder. | gränssnittet kan bara ha abstrakta metoder. Java 8 framåt, det kan ha standard samt statiska metoder., |
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 | arv | abstrakt klass kan ärva en annan klass med utökar sökord och genomföra ett gränssnitt. | gränssnitt kan ärva endast ett mellanslag. |
7 | arv | abstrakt klass kan ärvas med hjälp av utökar sökord. | gränssnittet kan endast implementeras med hjälp av implementerar nyckelord., |
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