I would suggest you to read Abstract class and Interface topics before reading this post.
1. Abstract classes can have concrete methods [ methods with definition] but interface will have only abstract methods
2. Abstract class can have variables of any access specifier . But interfaces only can have public static and final variables
3. Concrete methods in abstract class can have any access specifier but interface methods are public and abstract by default
4. Abstract classes can extend only one class but interfaces can extend any number of interfaces.
5. Also a class can extend only one abstract class as multiple inheritance is not supported in java but a class can implement many number of interfaces.
Sign up here with your email
ConversionConversion EmoticonEmoticon