개발 일기
JAVA 상속 공부 5 (feat. 인터페이스 Interface) 본문
인터페이스란??
1. 클래스(인터페이스)가 가진 모든 메쏘드가 추상메쏘드임
2. 다중상속의 효과를 냄_(클래스는 불가능하나 인터페이스는가능하다)
-형식
* class keyword 대신에 interface 라는 keyword를사용
* 추상메쏘드앞에 abstract 를 붙히지않는다.
ex>public interface Test{
public void method1();
public void method2();
}
- 사용
1. interface를 상속(implements)받아서
2. 추상메쏘드를 재정의(구현)한후 사용한다.
ex> public class TestImpl implements Test{
public void method1(){
}
public void method2(){
}
코딩 예시)
interface 키워드 interface 클래스 InterfaceA 클래스 생성
1. method1, method2 설정
2. method2의 abstract(제한자)설정은 안해도 됨
interface 키워드 interface 클래스 InterfaceB 클래스 생성
1. method3, method4 설정
InterfaceA,B 클래스를 상속(implements)받아 InterfaceABImpl 클래스 생성 & 메소드 재정의(Override)
메인 메소드 생성
1. InterfaceABImpl 클래스 객체 abImpl 생성 후 메소드 1~4 실행
2. Object 클래스 형변환 테스트
3. InterfaceABImpl 클래스 객체 abImpl을 IntherfaceA ia 객체로 형변환 진행 후 메소드 1, 2 실행 테스트
4. InterfaceABImpl 클래스 객체 abImpl을 IntherfaceB ib 객체로 형변환 진행 후 메소드 3, 4 실행 테스트
이번에는 클래스의 다중상속이 안되는 JAVA에서 인터페이스를 활용하여 하나의 클래스에 두가지의 인터페이스를 부여 한 뒤 메소드를 실행해보는 과정과 형변환을 통해 기존 인터페이스의 메소드를 호출해보는 연습을 했습니다!!
감사합니다.
'JAVA 공부' 카테고리의 다른 글
JAVA 에서 제공하는 기본 API java.lang 2 (feat. String API 2) (0) | 2021.06.21 |
---|---|
JAVA 에서 제공하는 기본 API java.lang 1 (feat. String API) (0) | 2021.06.20 |
JAVA 상속 공부 4 (feat. 추상클래스 abstract - 제한자) (2) | 2021.06.17 |
JAVA 상속 공부 3 (feat. 객체형변환) (0) | 2021.06.16 |
JAVA 상속 공부 2 (feat.Overriding = 재정의 란??) (0) | 2021.06.15 |