What is the difference between abstract class and interface?
Answers were Sorted based on User's Feedback
Answer / ranganathkini
An interface is purely contractual in that it only defines
method headers but no implementation. Classes that implement
the interface must provide implementation to all method
defined by the interface.
An abstract class contains partial implementation, i.e. it
provides implementation for some methods where as just
defines abstract method headers for other. Abstract classes
cannot be instantiated directly and have to be extended by
subclasses who implement the abstract methods defined in the
abstract superclass. Unlike an interface, subclasses of the
abstract class only need to implement only those methods
that are marked abstract.
| Is This Answer Correct ? | 6 Yes | 0 No |
Answer / venu
A programer uses an abstract class when there are some
common features of the program shared by all the objects.
A programer uses an interface when all the features of the
program are implements differently for different objects.
| Is This Answer Correct ? | 3 Yes | 1 No |
Answer / srikanth reddy
1. Abstract classes may have some executable methods and
methods left unimplemented. Interfaces contain no
implementation code.
2. An class can implement any number of interfaces, but
subclass at most one abstract class.
3. An abstract class can have nonabstract methods. All
methods of an interface are
abstract.
4. An abstract class can have instance variables. An
interface cannot.
5. An abstract class can define constructor. An interface
cannot.
6. An abstract class can have any visibility: public,
protected, private or none
(package). An interface's visibility must be public or none
(package).
7. An abstract class inherits from Object and includes
methods such as clone() and
equals().
| Is This Answer Correct ? | 1 Yes | 0 No |
What is the common usage of serialization? What exceptions occur during serialization?
What is thread safe in java?
What does method mean?
What about static nested classes in java?
What is ‘has a’’ relationship in java?
How do you convert int to char in java?
What is another word for methodology?
What is append in java?
What happens if we override only equals?
What is valid keyword in java?
What is the benefit of lambda expressions?
What is the exception hierarchy in java?