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