Difference between abstract class and Interfaces?
Answers were Sorted based on User's Feedback
Answer / nanthinikrishnan
An abstract class can have concrete method, which is not
allowed in an interface. Abstract class can have private or
protected methods and variables and only public methods and
variables are allowed in interface. We can implement more
than one interface , but we can extend only one abstract
class. Interfaces provides loose coupling where as abstract
class provides tight coupling.
Is This Answer Correct ? | 7 Yes | 0 No |
Answer / ranganathkini
An Interfaces defines a public contract of methods for the
classes that implement it. An implementing class must
implement all the method defined by the interface.
An abstract class on the other hand not only defines a
public contract of methods but may also provide partial
implementation of some or all of the class methods. A
subclass of an abstract class inherits the partial
implementation (if any) or must provide a concrete
implementation of the abstract methods.
Is This Answer Correct ? | 4 Yes | 0 No |
Answer / taresh nama
• Interfaces provide a form of multiple inheritances.
A class can extend only one other class.
• Interfaces are limited to public methods and
constants with no implementation. Abstract classes can have
a partial implementation, protected parts, static methods,
etc.
• A Class may implement several interfaces. But in
case of abstract class, a class may extend only one
abstract class.
• Interfaces are slow as it requires extra
indirection to to find corresponding method in in the
actual class. Abstract classes are fast.
Is This Answer Correct ? | 2 Yes | 0 No |
Answer / loganathan s
abstract is a class and its fulfilling while the subclass
is extends the abstract class methods.
where as interface also a class it declare a methods.we
must override all the methods at implements the interface.
Is This Answer Correct ? | 1 Yes | 0 No |
Answer / ravikiran
abstract class is the one which canhave both abstract as
well as non abstract methods
Interface is the one which has all the methods are abstract
Is This Answer Correct ? | 2 Yes | 1 No |
Answer / mari
multiple inheritence is applicable for interfaces but at
abstract class can't support multiple inheritence it can
have only multilevel inheritence
Is This Answer Correct ? | 0 Yes | 0 No |
Answer / hema
Abstract Class is the Class where it can have Methods with
both Definition and Declaration.
Method Declaration: public void Display();
Method Definition: public void Add(){ ..code goes on here...}
When all the methods in a class are only Declared then it is
Interface.
Is This Answer Correct ? | 0 Yes | 0 No |
Explain what is Marker interface?
what is the Diff. between Access Specifiers and Access Modifiers?
39 Answers BMC, Cyber Shot, Infosys, VTS, Wipro,
how to pass the parameters to applets?
what are ER diagrams?
explain how many oops concepts available in java with realtime scenarios?
How do you sort objects in java?
how can u apply shallow cloning and deep cloning to create object?
Is java an open source?
how to run ecllipse with jettyserver for windows environment using batch file
What is singleton pattern?
Can we have try without catch block?
What is an empty list in java?