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 |
What do you mean by boolean?
Why java does not supports multiple inheritance?
Does google use java?
In Inheritence concept, i have a static method in super class and i am inheriting that class to one sub class.in that case the static method is inherited to sub class or not????
What are data types in programming?
What is data structure in java?
How is a variable stored in memory?
What do you mean by ordered and sorted in collections in java?
What Is Composition?
what is the difference between a java object reference and c++ pointer?
Can we convert stringbuilder to string in java?
explain me with a code snippet about the generation and handling of null point exceptions.