Computer Science, asked by k0h2ushujecc, 1 year ago

difference between abstract class and interface in java

Answers

Answered by NightHawk
0
"Main difference is methods of a Java interface are implicitly abstract and cannot have implementations. A Java abstract class can have instance methods that implements a default behavior. 

Variables declared in a Java interface is by default final. An abstract class may contain non-final variables. 

Members of a Java interface are public by default. A Java abstract class can have the usual flavors of class members like private, protected, etc.. 

Java interface should be implemented using keyword “implements”; A Java abstract class should 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. 

A Java class can implement multiple interfaces but it can extend only one abstract class. 
Interface is absolutely abstract and cannot be instantiated; A Java abstract class also cannot be instantiated, but can be invoked if a main() exists. 

In comparison with java abstract classes, java interfaces are slow as it requires extra indirection."
Answered by Anonymous
0
abstract class

abstract class can extend only one class or one abstract class at a time .abstract  class  can extend from a class or from an abstract class.abstract  class  can  have  both  abstract and concrete methods.

Interfaces

 interface can extend any number of interfaces at a time.interface can extend only from an interface. interface can  have only abstract methods
Similar questions