Difference between abstract class and interface
Answer Posted / poulami
Interface vs. Abstract class
1.Multiple inheritance
A class may inherit several interfaces.
A class may inherit only one abstract class.
2.Default implementation
An interface cannot provide any code, just the signature.
An abstract class can provide complete, default code and/or
just the details that have to be overridden.
3.Access Modfiers
An interface cannot have access modifiers for the subs,
functions, properties etc everything is assumed as public
An abstract class can contain access modifiers for the subs,
functions, properties
4.Core VS Peripheral
Interfaces are used to define the peripheral abilities of a
class. In other words both Human and Vehicle can inherit
from a IMovable interface.
An abstract class defines the core identity of a class and
there it is used for objects of the same type.
5.Homogeneity
If various implementations only share method signatures then
it is better to use Interfaces.
If various implementations are of the same kind and use
common behaviour or status then abstract class is better to use.
6.Speed
Requires more time to find the actual method in the
corresponding classes.
Abstrct classes are fast
7.Adding functionality (Versioning)
If we add a new method to an Interface then we have to track
down all the implementations of the interface and define
implementation for the new method.
If we add a new method to an abstract class then we have the
option of providing default implementation and therefore all
the existing code might work properly.
8.Fields and Constants
No fields can be defined in interfaces
An abstract class can have fields and constrants defined
| Is This Answer Correct ? | 0 Yes | 0 No |
Post New Answer View All Answers
what are the fundamental and common properties of .net controls?
Explain the number or character entered through keyboard gets converted to equivalent ascii code & it get stored on ram in the binary form. What is the exact procedure on hardware that converts the ascii value to binary? : .NET Architecture
what are constructors and destructors?
Explain domestic architecture artifacts? : .NET Architecture
How can implement drag and drop using atlas?
I am working with asp.net 2005 and Crystal report 10. I have an image field on my dataset to show on Crystal report.And the image is shows dynamically from database in image field of CR. The image field is showing well on my Crystal report on its first page with all other data but when i click to open second page of CR,it does not show any data on that.I found that this is because of adding the image field on crystal report. Because when i remove the image field from the CR then it will run both the pages of CR. I am using the Page Load event to bind CR data with Database. And i have already check with the Init event to bind CR , but it still not shows the data on second page when i use image field on that. Please give solution for that.....
Explain different pipelining hazards and how are they eliminated? : Dot net architecture
Explain the difference between inprocess vs out process session state : Dot net architecture
What size is a .net object?
What is textview control of .net mobile? : Microsoft dot net mobile
What is the difference between primary & secondary storage device? : Dot net architecture
What is the application frame host?
What is .net mobile lists. Explain with an example? : Microsoft dot net mobile
How can we integrate atlas with web services?
.Net Frame work arch?