You are on page 1of 1

1 A class may inplement several interfaces. A class may extend only one abstract class.

2 An interface can have only abstract methods. An abstract class can have both abstract methods and concrete methods.At one abstract method in the abstract class. 3 Interfaces cannot have constructors. Abstract class can have constructors. 4 Only static final variables are allowed to be decelared.Both static and instance variables are allowed. 5 All decelared methods are implicitly public. Can have any kind of methods. 6 We should initialize variables in an interface. Not necessary to initialize variables in an abstract class. 7 In the case of interface you can make any class in the hierarchy. In the case of abstract class you know the class hierarchy in advance. 8 An interface implementation may be added to any existing third party class. A third party class must be rewritten to extend only from the abstract class. 9 Interfaces can be implemented by classes that are not related to one another Abstract classes are used only when there is a is-a type of relationship between the classes.

You might also like