인터페이스와 추상 클래스

SeungJoo
|2023. 10. 20. 19:46
728x90

인터페이스

인터페이스는 추상화된 메서드의 집합을 나타내는 틀입니다. 클래스와 달리 추상 메서드만을 가질 수 있고, 멤버 변수나 일반 메서드를 가질 수 없습니다. 인터페이스는 다른 클래스에서 구현할 수 있는 메서들을 정의하는 데 사용하며 자바에서는 다중 상속을 지원하지 않기 때문에 여러 클래스에서 공통적으로 사용될 메서드를 인터페이스로 정의하고 구현함으로써 다중 상속과 유사한 기능을 가지고 있기 때문에 인터페이스는 기본 설계도라고 생각할 수 있습니다.

 

[이미지 출처]  (alecture.blogspot.com)

(ex) 인터페이스 (interface)

public interface MyInterFace {
    // 추상 메서드 정의
    void myMethod();

    // 또 다른 추상 메서드 정의
    void anotherMethod();
}

(ex) 구현 (implements)

public class MyClass implements MyInterface {

    @Override
    public void myMethod() {
    }
]

추상클래스

다른 클래스들에게 공통된 특성을 상속하기 위한 클래스이며 객체를 생성할 수 없는 클래스 입니다. 그렇기 때문에 다중 상속은 불가능하고 단일 상속만 가능합니다. 추상클래스는 미완성 메서드를 가진 미완성 클래스라고 말합니다.

 

(ex) 추상메서드

public abstract class Computer {
    //추상메서드
    abstract void showInfo();
 }

(ex) display 메서드 구현

class LaptopComputer extends Computer {
    @Override
    void showInfo(){
        System.out.println("Laptop Computer");
    }
}
728x90

'JAVA' 카테고리의 다른 글

Super  (0) 2023.10.21
다형성  (0) 2023.10.18
객체지향언어  (0) 2023.10.17