Diferencia entre clase abstracta e interfaz en Java
en este artículo, discutiremos la diferencia entre clase abstracta e interfaz en Java con ejemplos. He cubierto la clase abstracta y la interfaz en tutoriales separados de conceptos OOPs, así que te recomendaría leerlos primero, antes de ir a través de las diferencias.
1. Clase abstracta en java
2.,tected y public abstract methods
cada uno de los puntos mencionados anteriormente se explican con un ejemplo a continuación:
clase abstracta vs interfaz en Java
diferencia no.,1: clase Abstracta puede extender a una única clase o de una clase abstracta en un tiempo
Resultado:
display3 method
la Interfaz puede extender a cualquier número de interfaces en un tiempo
Resultado:
display2 method
Diferencia Nº 2: Clase abstracta puede ser extendido(heredado) por una clase o de una clase abstracta
Resultado:
Example4-display2 method
las Interfaces pueden ser prorrogadas por las interfaces. Las clases tienen que implementarlas en lugar de Extender
salida:
display1 method
diferencia No.,3: la clase abstracta puede tener métodos abstractos y concretos
La interfaz solo puede tener métodos abstractos, no pueden tener métodos concretos
salida:
display1 method
diferencia no.4: en la clase abstracta, la palabra clave ‘abstract’ es obligatoria para declarar un método como abstracto
en interfaces, la palabra clave ‘abstract’ es opcional para declarar un método como abstracto porque todos los métodos son abstractos por default
diferencia no.,5: la clase abstracta puede tener métodos abstractos protegidos y públicos
La interfaz puede tener solo métodos abstractos públicos
diferencia no. 6: la clase abstracta puede tener variables finales estáticas, finales o estáticas con cualquier especificador de acceso
La interfaz puede tener solo variables finales (constantes) estáticas públicas