DEV Community

S Sarumathi
S Sarumathi

Posted on

OOPS-Object Oriented Programming System

OOPS = Object Oriented Programming System:

1. Class:
Class = Blueprint / Template

Example:
Car blueprint before manufacturing.

In Java:

class Student {
    String name;
    int age;
}

Enter fullscreen mode Exit fullscreen mode

Here:

Student → Class
name, age → Variables

Class doesn't use memory until object is created.

2. Object:
Object = Instance of Class

Real-world example:

Class → Car
Object → BMW, Audi, Tesla

Java Example:

class Student {
    String name;
    int age;
}

public class Main {
    public static void main(String[] args) {

        Student s1 = new Student();

        s1.name = "Ram";
        s1.age = 21;

        System.out.println(s1.name);
        System.out.println(s1.age);
    }
}
Enter fullscreen mode Exit fullscreen mode

Here:

  • Student → class

  • s1 → object

  • new → creates object

3. Inheritance:
Inheritance = One class gets properties of another class

Parent → Child

Example:

class Animal {
    void eat() {
        System.out.println("Eating...");
    }
}

class Dog extends Animal {
    void bark() {
        System.out.println("Barking...");
    }
}
Enter fullscreen mode Exit fullscreen mode

Main method:

public class Main {
    public static void main(String[] args) {

        Dog d = new Dog();

        d.eat();
        d.bark();
    }
}

Enter fullscreen mode Exit fullscreen mode

Dog gets:

  • eat() from Animal

  • bark() own method

This is inheritance.

4. Encapsulation:
Encapsulation = Data hiding

Using:

  • private variables

  • public methods

Example:

class Student {

    private int marks;

    public void setMarks(int m) {
        marks = m;
    }

    public int getMarks() {
        return marks;
    }
}
Enter fullscreen mode Exit fullscreen mode

Main:

Student s = new Student();

s.setMarks(90);

System.out.println(s.getMarks());
Enter fullscreen mode Exit fullscreen mode

Here:

  • marks is hidden

  • accessed using methods

This is encapsulation.
5. Abstraction:

Abstraction = Hide implementation

Using:

  • Abstract class

  • Interface

Example:

abstract class Animal {
    abstract void sound();
}

class Dog extends Animal {

    void sound() {
        System.out.println("Bark");
    }
}
Enter fullscreen mode Exit fullscreen mode

6. Polymorphism:
Polymorphism = One method, many forms

Two types:
Method Overloading

Same method name

class Add {

    int add(int a, int b) {
        return a + b;
    }

    int add(int a, int b, int c) {
        return a + b + c;
    }
}
Enter fullscreen mode Exit fullscreen mode

Method Overriding:

Child class changes parent method

class Animal {
    void sound() {
        System.out.println("Animal sound");
    }
}

class Dog extends Animal {

    void sound() {
        System.out.println("Dog bark");
    }
}
Enter fullscreen mode Exit fullscreen mode

Top comments (0)