JAVA - 6. 인터페이스

CodeModel·2024년 3월 1일
0

자바

목록 보기
7/8

인터페이스

인터페이스는 실제로 기능은 없지만 이렇게 만들것이다 라고 정의해 놓은 것이다
인터페이스에서 정의한 변수는 상수가 된다

public interface TV {
	public int MAX_VOLUME = 100;	// 상수(변하지 않는다)
	public int MIN_VOLUME = 0;		// 상수(변하지 않는다)
    
	public void turnOn(int volume);
	public void changeChannel(int channel);
}

인터페이스 사용법

위의 인터페이스 TV를 사용해보겠다 이클립스에서 클래스를 생성할 때 인터페이스를 넣어주면 자동으로 모든 함수가 생성된다.
동일한 인터페이스를 구현한다는 것은 클래스의 사용법이 똑같다는 것을 알아야 한다

public class LedTV implements TV {
	public void turnOn() {}
    public void changeChannel() {}
}

main {
	TV tv = new LedTV();
    tv.turnOn()
    tv.changeChannel()
}

default method

인터페이스는 선언만 할 수 있지 구현은 못했다 하지만 default 메소드를 사용하면 만들 수 있다
또 Static 메서드도 있는데 Static 메서드는 사용할 때 인터페이스명.메서드 방법으로 사용할 수 있다

publir interface Calculator {
	public int plus(int i, int j)
    
    Default 메서드
    default int exec(int i, int j) {
    	return i + j
    }
    
    // Static 메서드
    public static int exec2(int i, int j) {
    	return i + j
    }
}

main {
	Calculator cal = new myCal 	// 예전에 만든거
    int plus = cal.exec(1,2)
    System.out.println(plus)	// 3
    
    Calculator.exec2(1,2)		// static 메서드
}
profile
개발자가 되기 위한 일기

0개의 댓글