Abstract Classs
|
Intrerface
|
A class may extend
only one abstract class.
|
A Class may implement several interfaces.
|
An
abstract class can have non-abstract methods.
|
All
methods of an Interface are abstract.
|
An abstract class can have instance variables.
|
An Interface cannot have instance variables.
|
An
abstract class can have any visibility: public, private, protected.
|
An
Interface visibility must be public (or) none.
|
An
abstract class can contain constructors.
|
An
Interface cannot contain constructors.
|
An
abstract class can provide complete, default code and/or just the details
that have to be overridden.
|
An
interface cannot provide any code at all, just the signature. (I.e. All
Interface methods are public).
|
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.
|
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.
|
Monday, October 22, 2012
What are the differences between Interface and Abstract class?
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment