Interface..
1. A class can implement from many interfaces
2. A class may or may not implement all methods of an interface
3. There can no fields in a interface
4. There can be no access modifiers. By default all methods are public.
5. No default implementation allowed in interface
6. Define peripherial abilities of a class which two different types of sub classes can inherit
7. Performance: codes requires more time to find the actual method in a class
8. Adding new method to base interface class would require finding all classes that implement the interface and implementing new method
Abstract
1. A class can inherit from only one abstract class
2. A class has to implement all methods of an interface
3. Fields are allowed
4. Different access modifiers are allowed.
5. You can provide default implementations
6. Defines core abilities of a class.
7. Performace: fast
8. Adding new method, we can provide a default implementation for all classes in one base abstract class.
A good example can be viewed at http://www.codeproject.com/KB/cs/abstractsvsinterfaces.aspx
1. A class can implement from many interfaces
2. A class may or may not implement all methods of an interface
3. There can no fields in a interface
4. There can be no access modifiers. By default all methods are public.
5. No default implementation allowed in interface
6. Define peripherial abilities of a class which two different types of sub classes can inherit
7. Performance: codes requires more time to find the actual method in a class
8. Adding new method to base interface class would require finding all classes that implement the interface and implementing new method
Abstract
1. A class can inherit from only one abstract class
2. A class has to implement all methods of an interface
3. Fields are allowed
4. Different access modifiers are allowed.
5. You can provide default implementations
6. Defines core abilities of a class.
7. Performace: fast
8. Adding new method, we can provide a default implementation for all classes in one base abstract class.
A good example can be viewed at http://www.codeproject.com/KB/cs/abstractsvsinterfaces.aspx
Comments