Skip to main content

Difference between Abstract Class and Interface


Difference between Abstract Class and Interface

Difference between abstract class and interface ?

Abstract Class:-

1) Can have abstract and non-abstract method both.
2) One class can extend at most one class.
3) can declare non abstract method and also can define body for it.


Interface:-
1) can have only abstract method.
2) One class can implement multiple interfaces.
3) can't delare body to a method.

Please look below example for more understanding:-



package Basics;

public abstract class Animal {

 int  head;
 //no body (unimplemented function need to override in child class as a
 //compulsion
 abstract void setLegs();
 
 //having body
 //may override or may not
 void setHead()
 {
  head=1;
 }
 
 
 
}


package Basics;

// can have only methods and by default all are abstract need to be override
//by implementing class, unlike abstract no method can havedefinition
public interface Pet {

 void tellWhereAreYouFrom(String place);
 String tellYourWeight(String weight);
 
}

package Basics;


// can extend one class but can implement multiple interface
public class Dog extends Animal implements Pet{

 //must override all abstract methods from Parent class
 @Override
 void setLegs() {
  
  System.out.println("i have four legs");
  
 }

 //must override all methods from an interface
 @Override
 public void tellWhereAreYouFrom(String place) {
  System.out.println("My place is"+place);
  
 }

 @Override
 public String tellYourWeight(String weight) {
  
  return weight;
 }

}

Comments

.

Popular posts from this blog

Adding Node at a given position in Linked List

Adding Node at a given position in Linked List




publicvoidaddNodeAtPosition(Node head,int position,int data){ Node temp=head;//create a node Node node=new Node(data);int c=1;//while counter is not equal to the positionwhile(c!=position){ temp=temp.next; c++;}//point node to the next of current node node.next=temp.next;//point next of current to the node to insert temp.next=node;}To Know the basic structure of the linked list click here