Java Interfaces — Free Java Tutorial
Learn Java Interfaces in Java with a free, beginner-friendly tutorial, examples and practice for Indian students on Syllab.in.
TL;DR: Learn Java Interfaces in Java with a free, beginner-friendly tutorial, examples and practice for Indian students on Syllab.in.
Written & reviewed by the Syllab.in Academic Team (CBSE/NCERT subject experts) · Updated
Java Interfaces in Java
An interface in Java is a contract — it defines what methods a class MUST implement, without specifying how. It's Java's way of achieving full abstraction. A class can implement multiple interfaces (unlike inheritance, which is single-parent).
Abstract class: A partially implemented class that can't be instantiated directly. Contains both abstract methods (must be implemented by subclasses) and concrete methods (already implemented). Use when you want to share code among related classes.
Interface vs Abstract class: Interface for "can-do" relationships (a Car can drive, a Boat can navigate — different hierarchies implementing the same capability). Abstract class for "is-a" relationships with shared code (Dog and Cat are both Animals with shared behaviour).
Java Interfaces — Syntax
// Interface definition
interface Printable {
void print(); // abstract — no body
default void save() { // default method — has body
System.out.println("Saving...");
}
}
// Implementing an interface
class Report implements Printable {
public void print() { System.
Learn Java Interfaces step by step with Syllab's free interactive Java tutorial — runnable code examples, practice exercises and instant AI feedback, all free with no signup. Explore the full Java course →