OOP and Class Level Questions

Abstract Class vs Interface
INTERFACEABSTRACT 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 onlyAn 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.
Source : https://www.geeksforgeeks.org/difference-between-abstract-class-and-interface-in-java/

Comments

Popular posts from this blog

Array related Questions