SyntaxStudy
Sign Up
Java Beginner 12 min read

OOP in Java

Java is a purely object-oriented language. Everything in Java is an object (except primitive types). The four pillars of OOP — encapsulation, inheritance, polymorphism, and abstraction — are all core to Java.

Example
// Animal.java - Base class
public class Animal {
    private String name;  // encapsulation
    private int age;

    public Animal(String name, int age) {
        this.name = name;
        this.age = age;
    }

    // Getters
    public String getName() { return name; }
    public int getAge()     { return age; }

    // Method to override (polymorphism)
    public String speak() {
        return "...";
    }

    @Override
    public String toString() {
        return name + " (age " + age + ")";
    }
}

// Dog.java - Subclass (inheritance)
public class Dog extends Animal {
    private String breed;

    public Dog(String name, int age, String breed) {
        super(name, age);  // call parent constructor
        this.breed = breed;
    }

    @Override
    public String speak() {
        return "Woof!";   // polymorphism
    }

    public String getBreed() { return breed; }
}

// Main.java
Animal animal = new Dog("Rex", 3, "Labrador");
System.out.println(animal.speak());   // Woof!
System.out.println(animal);           // Rex (age 3)