Jul 9, 2010

What is the differances between a abstract calss and interface

ABTRACT CLASS:
------------- 
• It can not be instantiated
• It allow us to specify all access modifier except  
Private
• A class inheriting this must implement all of its 
abstract method
• A class can inherit only one abstract class at a 
time.
• Abstract class can add more functionality with out 
destroying child classes that were using old version. 
• We can declare the following
1. Fields
2. Constructors
3. Static Constructors
4. Static Functions
5. Concrete Functions

INTERFACE :
--------- 
• It can not be instantiated
• It allows only public Access modifier
• A class implementing interface must provide body 
for its entire member.
• A class can implement more than one interface at a 
time.
• Adding of additional functionality will have an 
effect on its child class due to the necessary 
implementation of interface methods.
• We can not declare the following
1. Fields
2. Constructors
3. Static Constructors
4. Static Functions
5. Concrete Functions
 
abstract class may contain concreate methods with abstract
methods where as interface containls only abstract methods

by default all methods in interface are public
where as  abstract class can contain all modifiers except
private


abstract class involves in inheriting chain . where as
interfaces there is no need to follow inherit chain 

No comments:

Post a Comment