[Java] 인터페이스가 가지고 있는 객체 지향의 특징

재우·2023년 10월 20일

프로그래머스 스진초 과제를 진행하면서 작성한 내용입니다.



객체지향의 특징으로는 추상화, 캡슐화, 상속, 다형성이 있다.

그중에서도 인터페이스가 가지고 있는 객체지향의 특징은 추상화라고 생각한다.

인터페이스에서 메서드를 정의해놓고, 이를 구현한 클래스에서 구현을 하는것이 딱 추상화이다.


아래 코드로 예를 들어보자.


// 인터페이스 정의
interface Animal {
    void makeSound();
}
// 인터페이스를 구현하는 클래스
class Dog implements Animal {
    @Override
    public void makeSound() {
        System.out.println("멍멍!");
    }
}

class Cat implements Animal {
    @Override
    public void makeSound() {
        System.out.println("야옹!");
    }
}
public class Main { // 인터페이스를 사용한 메인 클래스
    public static void main(String[] args) {
        Animal dog = new Dog();
        Animal cat = new Cat();

        
        dog.makeSound();
        cat.makeSound();
    }
}

0개의 댓글