인터페이스
인터페이스를 사용하여 자바의 다형성을 극대화할 수 있다.
- 다중 상속 가능
- 추상 메서드와 상수만 사용 가능
- 생성자 사용 불가 : 인터페이스 객체가 아니므로 생성자 사용 불가
- 메서드 오버라이딩 필수 : 자식클래스는 부모 인터페이스의 추상메서드를 모두 오버라이딩 해야함
- 인터페이스에는
private
사용 불가능
public class Main {
public static void main(String[] args) {
사람 a사람 = new 홍길동();
변호사 a변호사 = (변호사)a사람;
치과의사 a치과의사 = (치과의사)a사람;
성화봉송자 a성화봉송자 = (성화봉송자)a사람;
}
}
abstract class 사람 {
}
class 홍길동 extends 사람 implements 변호사, 치과의사, 성화봉송자 {
}
interface 변호사 {
}
interface 치과의사 {
}
interface 성화봉송자 {
}
구상클래스, 추상클래스, 인터페이스 비교
'Java' 카테고리의 다른 글
[Java] 예외처리 (try ~ catch) (0) | 2023.02.24 |
---|---|
[Java] 접근제한자(private) (0) | 2023.02.24 |
[Java] 생성자(Constructor), super메서드 (0) | 2023.02.24 |
[Java] ArrayList 클래스와 ArrayList 메서드 (0) | 2023.02.23 |
[Java] Arrays 클래스와 Arrays 메서드 (0) | 2023.02.23 |