This website uses cookies to ensure you get the best experience on our website. Learn more

TOP 6 difference between Abstract class and Interface in JAVA || Must know facts


TOP 6 difference between Abstract class and Interface in JAVA || Must know facts

This tutorial covers the difference between abstract class and interface.As we go further with this tutorial we are going to learn the top 6 difference when we compare interface vs abstract class in java.

First Lets talk about what is interface in java and what is the use of interface in java ?

So when we know the specification but not aware of the implementation, then we should go for an interface.

Then the next question will be what is abstract class in java and what is the use of abstract class in java ?

The answer is very simple, When we know the partial implementation then we should prefer abstract class.

I will try to demonstrate you the difference between interface and abstract class with a simple example with this tutorial.


The abstract keyword is used to create an abstract class whereas interface keyword is used to create an interface.


The variable of an abstract class can have final, non-final, static and non-static variables whereas the variable of an interface should be always public static final.


Another difference between abstract class and interface in java is :
we can achieve multiple inheritances by using interface whereas with an abstract class it is not possible as multiple inheritance is not supported by java.


An interface can’t have a constructor within it whereas the abstract class can have a constructor within it.know all the reasons why the abstract class does contain a constructor, you can follow the below tutorial by clicking on the link :


Why we need constructor inside an abstract class ? || Popular Java interview question


An interface in java can have an only abstract method within it whereas the abstract class in java can have both abstract and concrete method within it.
(FYI: from java 8 we can have both concert and abstract method within an interface )

To know more, watch this tutorial :

INTERFACE IN JAVA 8 with REAL TIME code ||Why DEFAULT Method?[Explained]


Well, we can have few more differences as well but these are the few common difference between abstract class and interface in java that each developer should
aware of.


Please subscribe to my channel by clicking on the link below.

Stay tuned and like my Facebook page for more.

Music :
credits : -

Adventures by A Himitsu
Creative Commons — Attribution 3.0 Unported— CC BY 3.0

Music released by Argofox
Music provided by Audio Library


intro template :

Difference Between Abstract Class And Interface in Java |when to use what?

In this video you will talk about Difference Between Abstract Class And Interface in Java and Which should you use, abstract classes or interfaces?

Difference between Interface default method and abstract class in Java 8

In this video you will talk about Difference between java 8 Interface default method and abstract class in Java

Abstract class vs interface | difference between abstract class and interface

what is the difference between abstract class and interface.A very important differences beteween abstract class and interface which the interviewer is expecting from us.

Difference between Interface and Absract Class

DURGASOFT is INDIA's No.1 Software Training Center offers
online training on various technologies like JAVA, .NET ,
courses from Hyderabad & Bangalore -India with Real Time Experts.
Mail us your requirements to
so that our Supporting Team will arrange Demo Sessions.
Ph:Call +91-8885252627,+91-7207212428,+91-7207212427,+91-8096969696.

Java Interface Tutorial - 4 - Interface vs Abstract Class

Java Interface Tutorial - Interface vs Abstract Class. A Comparison.

Java is one of the most popular object oriented programming languages. We take an hands-on approach using a combination of JShell(An awesome new feature in Java 9) and Eclipse as an IDE to illustrate more than 200 Java Coding Exercises, Puzzles and Code Examples.

Course Guide PDF -
Installation Guide PDF :

Join our Facebook Group -
Checkout all our awesome courses -

Step By Step Details
- Step 00 - Object Oriented Programming - Level 2 - Section Introduction
- Step 01 - Basics of Designing a Class - Class, Object, State and Behavior
- Step 02 - OOPS Example - Fan Class - Deciding State and Constructors
- Step 03 - OOPS Example - Fan Class - Deciding Behavior with Methods
- Step 04 - OOPS Exercise - Rectangle Class
- Step 05 - Understanding Object Composition with Customer Address Example
- Step 06 - Understanding Object Composition - An Exercise - Books and Reviews
- Step 07 - Understanding Inheritance - Why do we need it?
- Step 08 - Object is at top of Inheritance Hierarchy
- Step 09 - Inheritance and Overriding - with toString() method
- Step 10 - Java Inheritance - Exercise - Student and Employee Classes
- Step 11 - Java Inheritance - Default Constructors and super() method call
- Step 12 - Java Inheritance - Puzzles - Multiple Inheritance, Reference Variables and instanceof
- Step 13 - Java Abstract Class - Introductio
- Step 14 - Java Abstract Class - First Example - Creating Recipes with Template Method
- Step 15 - Java Abstract Class - Puzzles
- Step 16 - Java Interface - Example 1 - Gaming Console - How to think about Intefaces?
- Step 17 - Java Interface - Example 2 - Complex Algorithm - API defined by external team
- Step 18 - Java Interface - Puzzles - Unimplemented methods, Abstract Classes, Variables, Default Methods and more
- Step 19 - Java Interface vs Abstract Class - A Comparison
- Step 20 - Java Interface Flyable and Abstract Class Animal - An Exercise
- Step 21 - Polymorphism - An introduction

Abstract Class vs. Interface in Java 8

Java interface vs abstract class

What is the difference between an abstract class and an interface

Java 8 Features Tutorials | What are the Difference Between Interface and Abstract Class?

Java 8 Features Tutorials | What are the Difference Between Interface and Abstract Class | Java Tutorials | by Mr.Ramachandra
** For Online Training Registration: ► Call: +91-8179191999

Subscribe to our channel and hit the bell 🔔🔔🔔 icon to get video updates.

💡 Visit Our Websites
For Classroom Training:
For Online Training:

#JAVA_8 #New_Features #Tutorials

💡 About NareshIT:

Naresh IT is having 14+ years of experience in software training industry and the best Software Training Institute for online training, classroom training, weekend training, corporate training of Hadoop, Salesforce, AWS, DevOps, Spark, Data Science, Python, Tableau, RPA , Java, C#.NET, ASP.NET, Oracle, Testing Tools, Silver light, Linq, SQL Server, Selenium, Android, iPhone, C Language, C++, PHP and Digital Marketing in USA, Hyderabad, Chennai and Vijayawada, Bangalore India which provides online training across all the locations


💡 Our Online Training Features:
🎈 Training with Real-Time Experts
🎈 Industry Specific Scenario’s
🎈 Flexible Timings
🎈 Soft Copy of Material
🎈 Share Videos of each and every session.


💡 Please write back to us at

📧 📧 or Call us at the USA: ☎+1404-232-9879 or India: ☎ +918179191999


💡 Check The Below Links

► For Course Reg:
► Subscribe to Our Channel:
► Circle us on G+:
► Like us on Facebook:
► Follow us on Twitter:
► Follow us on Linkedin:
► Follow us on Instagram:

When to use Abstract class and When to use Interface in Java

For any java/devops/developer/lead position related interview assistance/guidance/help, you can reach out me @

In this session, I explained java interview questions and answers on abstract class , Interface with examples.

By end of this session, You will be able to answers to below questions:
What is abstract class?
What is interface?
What is the use of abstract class and interface?
When to use Abstract class and when to use interface?
What is the difference between abstract class vs interface?

When to use an abstract class in Java - 038

In Java, an abstract class is a class definition where we don't provide all the implementation details. The class has the keyword abstract added to it here. We denote abstract classes in our diagrams by making the class name in italics.

We can also mark some of the methods as abstract. That means we just provide the method signature and return type, but we don't provide the Java block that implements the method. We mark the methods with the keyword abstract. Note the method has no braces, no implementation, and just ends with a semi-colon. Again we use italics for abstract methods in our diagrams.

If we declare a class as abstract, the methods may or may not be abstract. We don't need to have any abstract methods. It would be weird, because what would be the point, but we can do it. The opposite isn't true. If we mark any method as abstract, we must mark the class as abstract.

Another note. We can’t have a method that is abstract and private. We couldn’t access it, and there’s really no point. If you’re protecting it for subclasses, you’ll want to use protected.

#java #programming #tutorial

Like the video? Don't forget to subscribe! ➜

Keep up to date with the newsletter! ➜

Transcript and code: :

Concepts: Java, classes, abstract classes, Compile-time safety

Social Links: Don't hesitate to contact me if you have any further questions.

Hosted by DJ Spiess
About Me:

Related Videos:

What are static factory methods in Java? - 036

Free Java Course Online

Media credits: All images are owned by DJ Spiess unless listed below:

under CC0

Easy Jam by Kevin MacLeod is licensed under a Creative Commons Attribution license (

Java Abstract Class VS. Interface - Example Using Both and an Explanation - APPFICIAL

Inheritance and Abstract classes are often compared. A class can only extend one base class at a time. All the classes are related.

However with Interfaces, a class can implement multiple interfaces at the same time. You can create a collection of classes that are not really related, but share a common set of methods.


Abstract Classes vs Interfaces (Java)

A simple example that demonstrates the use of both Abstract Classes and Interfaces. The two can be used in many different ways, either exclusively or in combination. We chose to keep them separate in order to demonstrate the main differences.

Programming WTF: When EXACTLY to use an Abstract Class? Java & Kotlin Interfaces vs Abstract Classes

A viewer asked a question about why I preferred to use an Abstract Class over an Interface in an older video on the Open/Closed Principle, and I thought I would use this opportunity to explain exactly why I think yuo should use an Abstract Class over an Interface. Although the original video was about a Java example, you can apply this same principle to Kotlin. Just be aware that Kotlin also has Extension Functions, which are often a great substitute for Abstract Classes!

Follow the wiseAss Community:

Support wiseAss here:

Part 33 - C# Tutorial - Difference between abstract classes and interfaces.avi

Text version of the video


All C# Text Articles

All C# Slides

Complete C# tutorial

All Dot Net and SQL Server Tutorials in English

All Dot Net and SQL Server Tutorials in Arabic

In this part of the c sharp tutorial we will learn about the differences between abstract classes and interfaces

When to use abstract class and interface in Java

In this video you will learn what is abstract and interface and in which scenario we used abstract class and interface in real time

Java Tutorials: Difference between Interface & abstract class

interface vs abstract class:
When to use interface & when to use abstract class:

Design difference:
- When all functionalities are implemented differently as per different behaviour then choose interface as their interface is different though their behaviour is same.
- So as far as all classes are following a protocol (behaviour) but way of implemeting is different, choose interface.

abstract class:
- When some of the functaionalities are same, but some are implemented differently, then choose abstarct classes.
- So in abstract class, some of the implementation are same for all, but some are other, but in interface, all implementation are different.

Behaviour difference:
- Generally interface are utility method, which can be implemented by any classes like Comparator, but abstract classes are co-related
- You can not extends more than 1 class, but you can implement multiple interface, so a

interface in java,
what is difference between interface & abstract class in java,
abstarct class vs interface,
java abstarct class vs interface,
difference between abstarct class vs interface,
abstract class,
when to use interface,
when to use abstract class,
java tutorial,
coding simplified,


I started my YouTube channel, Coding Simplified, during Dec of 2015.
Since then, I've published over 300+ videos. My account is Partner Verified.



★☆★ SEND EMAIL At: ★☆★

#6.9 Java Tutorial | Why do we need Abstract Class?

Github :-

Editing Monitors :

Check out our website:

Follow Telusko on Twitter:

Follow on Facebook:
Telusko :
Navin Reddy :

Follow Navin Reddy on Instagram:

Subscribe to our other channel:
Navin Reddy :
Telusko Hindi :

PayPal Id : navinreddy20
Patreon : navinreddy20

Difference between Abstract class and Interface

Difference between Abstract class and Interface

Abstract Class

1. Abstract class contains abstract and non abstract both methods
2. Variables declared in abstract class are may be final or non final
3. Abstract class should be extended using keyword “extends”
4. No concept of multiple inheritance
5. Access Specifiers are used
6. An abstract class is a special kind of class that cannot be instantiated
7. In abstract class keyword “abstract” is mandatory to declare a method as an abstract
8. Abstract class can have constructor
9. Abstract is faster
10. Include main() method so we can run it


1. Interface contains only abstract method
2. Variables declared in a Java interface is by default final
3. Interface should be implemented using keyword “implements”
4. Uses concept of multiple inheritance
5. No access specifiers are used everything is public by default
6. Interface is not a class
7. In an interface keyword “abstract” is optional to declare a method as an abstract
8. Interface do not have any constructor
9. Interface is slower than abstract class
10. In interface main() is absent so cannot be run

Difference Between Interface And Abstract Class | Core Java Interview Question

Difference Between Interface And Abstract Class is explained in this video. Difference between interface and abstract class in java 8. When to use abstract class and when to use interface in Java.

Java interview questions
Java programming tutorial
Java programming for beginners
Java tutorial for beginners
Java tutorial

How hashmap works internally in java

Video for difference between Method overloading and Method Overriding
Video for difference between Compile time polymorphism and runtime polymorphism

Video for Inheritance Vs Association & Aggregation Vs Composition

Video for difference between JDK, JVM and JRE

Video for Object Oriented Programming Part 1

Video for Object Oriented Programming Part 1

Why String in Immutable?

Video for Coupling and Cohesion

Video for Differenace between String, StringBuffer and StringBuilder in java

Using Generics In Collection

Introduction to collection framework

Difference Between ArrayList And LinkedList

How HashMap works internally

Difference Between HashSet, LinkedHashSet and TreeSet



Check Also