Learn & Record

[코리아IT아카데미] Java - Interface 본문

Dev/Java

[코리아IT아카데미] Java - Interface

Walker_ 2024. 1. 25. 23:34
// 인터페이스 안에서 선언된 메서드는 자동 묵시적으로 public abstract이 적용된다.
// public이나 abstract 수식어 없어도 됨
// public : 어떤 패키지의 어떤 클래스도 사용할 수 있다는 것을 의미.

 

인터페이스는 다른 클래스에 의하여 구현(implement) 될 수 있음

구현 : 인터페이스에 정의된 추상 메서드의 몸체를 정의한다는 의미

인터페이스 구현 시 implement 키워드 사용

package ch_01.day240123;

public interface RemoteControl {
    public void turnOn();
    public void turnOff(); 
}

class Television implements RemoteControl {
    boolean on;

    @Override
    public void turnOn() {
        on = true;
        System.out.println("TV가 켜졌습니다.");
    }

    @Override
    public void turnOff() {
        on = false;
        System.out.println("TV가 꺼졌습니다.");
    }
}

 

인터페이스 함수 내에 변수들은 모두 [ public static final ]이 자동으로 붙음

interface MyInterface {
    // 모두 public static final이 자동으로 붙음
    int w = 10;
    static int x = 20;
    final int y = 30;
    public static final int z = 40;
}

public class MyInterface_01 {
    public static void main(String[] args) {
        System.out.println("w = " + MyInterface.w);
        System.out.println("x = " + MyInterface.x);
        System.out.println("y = " + MyInterface.y);
        System.out.println("z = " + MyInterface.z);
    }
}

 

인터페이스는 추상 메서드만 가질 수 있음.

public abstract 생략 가능 -> 자동으로 붙음