New Tutorials:   JAVASCRIPT    SASS/SCSS    PL/SQL  
See the Tutorial List

Difference Between Concrete Class, Abstract Class, Final Class, Interface.


Concrete Class Abstract Class Final Class Interface
Constructor Yes Yes Yes No
Non-static (method) Yes Yes Yes Yes
Non-static (variable) Yes Yes Yes No
Access Modifier (by default) Default Default Default Public
Object Declaration Yes Yes Yes Yes
Instantiation Yes No Yes No
Relation Both (IS-A & HAS-A) IS-A HAS-A IS-A
Final Declarations May or May not be May or May not be May or May not be Only Final
Abstract Declarations No May or May not be No Fully Abstract
Inheritance Keyword Extends Extends No Inheritance Implements
Overloading Yes Yes Yes Yes
Overriding No No No No
Super keyword Yes Yes Yes No
This keyword Yes Yes Yes Yes
Byte Code .class .class .class .class
Anonymous Class No Yes No Yes
Keywords used for declaration No keyword Abstract keyword Final keyword Interface keyword
Inheritance Single Single No Inheritance Multiple
Static Variables Yes Yes Yes Yes