반응형
인터페이스
객체의 사용 방법을 정의한 타입으로서 다양한 객체를 동일한 사용 방법으로 이용할 수 있다.
즉, 인터페이스를 이용하면 개발 코드를 바꾸지 않고서 다양한 객체를 사용할 수 있다.
인터페이스 사용은
interface 인터페이스이름{
//상수
타입 상수이름 = 값;
// 추상 메소드
타입 메소드이름(매개변수);
}
상수 필드 선언
상수 필드에는 데이터를 저장할 인스턴스나 정적 필드가 올 수 없다. 따라서 처음 값을 지정해줘야한다.
[public static final] 타입 상수이름 = 값;
//앞에 부분은 상수필드이기 때문에 생략이 가능
추상 메소드 선언
추상 메소드도 마찬가지로 앞에 public abstract를 앞에 생략 가능하며 인터페이스의 메소드 호출은 객체에서 메소드에서 실행된다.
구현 클래스
인터페이스에서 정의된 추상 메소드를 재정의해서 실행내용을 가지고 있는 클래스로
클래스 선언부에 implements라는 키워드와 인터페이스 이름이 들어간다.
즉, 인터페이스를 이용해서 다양한 객체를 사용하려고 할때 사용되는 객체가 구현 클래스로 만들어진다.
public class Class_Name implements Interface_Name{
//여기에는 인터페이스에서 선언했던 메소드들이 모두 재정의되어야 함!!!
}
앞서 배웠던 인터페이스와 구현 클래스를 사용하는 방법은 간단하다.
인터페이스 변수 = 구현객체; 이런식으로 선언해주면 된다.
interface Test{}
public class Object implements Test{}
//main 부분
Test test = new Object();
다중 인터페이스 구현 클래스
객체는 다수의 인터페이스 타입으로도 사용이 가능하는데 그걸 다중 인터페이스 구현 클래스라고 한다.
선언은
public class Class_Name implements Interface_A, Interface_B{
//인터페이스 A에 있는 추상 메소드를 재정의
//인터페이스 B에 있는 추상 메소드도 재정의
}
그 외에 인터페이스는 필드나 매개변수, 로컬 변수의 타입으로 선언이 가능하다.
반응형
'Language > Java' 카테고리의 다른 글
Java 중첩 클래스와 중첩 인터페이스 (0) | 2022.06.11 |
---|---|
Java 타입 변환과 다형성 (0) | 2022.06.06 |
Java 추상클래스 (0) | 2022.05.30 |
Java 타입 변환과 다형성 (0) | 2022.05.27 |
Java 상속 (0) | 2022.05.22 |