OOP and Class Level Questions
Abstract Class vs Interface
Source : https://www.geeksforgeeks.org/difference-between-abstract-class-and-interface-in-java/
INTERFACE | ABSTRACT CLASS |
---|---|
Interface can have only abstract methods. | Abstract class can have abstract and non-abstract methods. From Java 8, it can have default and static methods also. |
Variables declared in a Java interface are by default final.
|
An abstract class may contain non-final variables.
|
Interface has only static and final variables.
|
Abstract class can have final, non-final, static and non-static variables.
|
Interface can’t provide the implementation of abstract class. |
Abstract class can provide the implementation of interface.
|
A Java interface can be implemented using keyword “implements” | Abstract class can be extended using keyword “extends”. |
An interface can extend another Java interface only | An abstract class can extend another Java class and implement multiple Java interfaces. |
Members of a Java interface are public by default. | A Java abstract class can have class members like private, Sprotected, etc. |
Comments
Post a Comment