0% found this document useful (0 votes)
72 views

Difference Between Abstract Class and Interface

An abstract class can provide partial implementation of methods while an interface provides no implementation, requiring subclasses to implement all abstract methods. This example creates an interface A with four abstract methods, an abstract class B that implements A and provides an implementation of method c, and a subclass M of B that implements the remaining methods a, b, and d. When an object of type A is created as an instance of M, all interface methods are called and the corresponding implementations are executed.

Uploaded by

Venu D
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
72 views

Difference Between Abstract Class and Interface

An abstract class can provide partial implementation of methods while an interface provides no implementation, requiring subclasses to implement all abstract methods. This example creates an interface A with four abstract methods, an abstract class B that implements A and provides an implementation of method c, and a subclass M of B that implements the remaining methods a, b, and d. When an object of type A is created as an instance of M, all interface methods are called and the corresponding implementations are executed.

Uploaded by

Venu D
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 2

Difference between abstract class and interface

Abstract class and interface both are used to achieve abstraction where we can declare the
abstract methods. Abstract class and interface both can't be instantiated.

But there are many differences between abstract class and interface that are given below.

Simply, abstract class achieves partial abstraction (0 to 100%) whereas interface achieves
fully abstraction (100%).

Example of abstract class and interface in Java


Let's see a simple example where we are using interface and abstract class both.

1. //Creating interface that has 4 methods  
2. interface A{  
3. void a();//bydefault, public and abstract  
4. void b();  
5. void c();  
6. void d();  
7. }  
8.   
9. //Creating abstract class that provides the implementation of one method of A interfa
ce  
10. abstract class B implements A{  
11. public void c(){System.out.println("I am C");}  
12. }  
13.   
14. //Creating subclass of abstract class, now we need to provide the implementation of 
rest of the methods  
15. class M extends B{  
16. public void a(){System.out.println("I am a");}  
17. public void b(){System.out.println("I am b");}  
18. public void d(){System.out.println("I am d");}  
19. }  
20.   
21. //Creating a test class that calls the methods of A interface  
22. class Test5{  
23. public static void main(String args[]){  
24. A a=new M();  
25. a.a();  
26. a.b();  
27. a.c();  
28. a.d();  
29. }}  

Output:

I am a
I am b
I am c
I am d

You might also like