Implement Interface using Abstract Class in Java
Last Updated :
06 Feb, 2023
Interface contains only abstract methods that can’t be instantiated and it is declared by keyword interface. A class that is declared with the abstract keyword is known as an abstract class in Java. This is a class that usually contains at least one abstract method which can’t be instantiated and It is also possible for the class to have no methods at all. The instance of an abstract class can’t be created.
Now as all methods in an interface are abstract methods therefore we can implement it using Abstract Class.
1. Let’s create an Interface at first:
Java
interface GFG {
void learnCoding();
void learnProgrammingLanguage();
void contribute();
}
|
Here the three non-implemented methods are the abstract methods
2. Now let’s implement the interface in an Abstract class named Student:
Java
abstract class Student implements GFG {
@Override public void learnCoding()
{
System.out.println(
"Let's make coding a habit with GFG" );
}
@Override public void learnProgrammingLanguage()
{
System.out.println(
"Let's master all fundamentals of java with the help of GFG" );
}
}
|
Here we have overridden two abstract methods of the interface GFG.
3. Now let’s create a class GEEK which extends the abstract class, Student:
As previously mentioned, we can’t create an instance of our abstract class therefore we need to make a non-abstract class.
Java
class GEEK extends Student {
@Override public void contribute()
{
System.out.println(
"Now let's help others by contributing in GFG" );
}
}
|
Here we have overridden the remaining method of the interface GFG.
Below is the overall implementation of the problem statement:
Java
interface GFG {
void learnCoding();
void learnProgrammingLanguage();
void contribute();
}
abstract class Student implements GFG {
@Override public void learnCoding()
{
System.out.println(
"Let's make coding a habit with GFG" );
}
@Override public void learnProgrammingLanguage()
{
System.out.println(
"Let's master all fundamentals of java with the help of GFG" );
}
}
class GEEK extends Student {
@Override public void contribute()
{
System.out.println(
"Now let's help others by contributing in GFG" );
}
}
public class Main {
public static void main(String[] args)
{
GEEK gfgStudent = new GEEK();
gfgStudent.learnCoding();
gfgStudent.learnProgrammingLanguage();
gfgStudent.contribute();
}
}
|
Output:
Let's make coding a habit with GFG
Let's master all fundamentals of java with the help of GFG
Now let's help others by contributing in GFG
Like Article
Suggest improvement
Share your thoughts in the comments
Please Login to comment...