태그
#JAVA
JAVA - interface
2021년 6월 15일 02:01

interface
- 다중 상속 전용 클래스
- 클래스의 변형
- interface를 붙어서 선언한다
- 확실하면 적고 확실하지 않으면 적지 않을 것
- 내부에 정의 할 수 있는 멤버들이 제한이 있다
- 객체 생성 불가, 익명 중첩 클래스를 통하여 객체 생성가능
- abstract랑 비슷하다
Main
public class JobApplicationTest {
public static void main(String[] args) {
// 취준생
JobApplicant coals = new JobApplicant();
// 회사 채용공고
Samsung samsung = new Samsung();
samsung.recruitJavaProgrammer(coals);
samsung.recruitCProgramming(coals);
}
}
회사 Samsong
public class Samsung {
// 자바 프로그래머 채용 공고
public void recruitJavaProgrammer(JavaProgamming java) {
java.objectOriented();
}
public void recruitCProgramming(CProgramming c) {
c.procedure();
}
}
Jobapplicant
// 취준생
public class JobApplicant implements CProgramming, JavaProgamming {
// spec
private int toeic;
private double gradePoint; // 학점
private String[] licenses; // 자격증
@Override
public void objectOriented() {
System.out.println("객체 지향은 --- 고 등등등");
}
@Override
public void procedure() {
System.out.println("절차지향은 --- 고 등등등");
}
}
JavaProgamming
public interface JavaProgamming {
// 객체 지향 프로그래밍
public void objectOriented();
}
CProgramming
public interface CProgramming {
// 구현이 없음
// 절차 지향 프로그래밍
public void procedure();
}