Diferenças entre classe abstrata e interface em Java
em Java, a abstração é alcançada usando classes abstratas e interfaces. Ambos contêm métodos abstratos que uma classe de criança ou classe de implementação tem que implementar. A seguir estão as diferenças importantes entre a classe abstrata e uma interface.
Sr. Não., | Chave | Classe Abstrata | Interface |
---|---|---|---|
1 | Métodos Suportados | classe Abstrata pode ter tanto um resumo bem como métodos concretos. | Interface pode ter apenas métodos abstratos. Java 8 em diante, ele pode ter métodos padrão, bem como estáticos., |
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 | Herança | classe Abstrata pode herdar de outra classe usando a palavra chave extends e implementar uma interface. | Interface pode herdar apenas um espaço interior. |
7 | Herança | uma classe Abstrata que pode ser herdada, usando a palavra chave extends. | Interface só pode ser implementada usando implementos palavra-chave., |
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