javaSE-인터페이스
컴 파일 생 성 된 바이트 파일 은.class 에 저 장 됩 니 다.
인터페이스 형식:
public interface {
//
}
자바 7 의 인터페이스 에 포 함 될 수 있 는 내용 은 1.상수 2.추상 적 인 방법 자바 8 의 인터페이스 에 포 함 될 수 있 는 내용 은 3.기본 적 인 방법 4.정적 방법 자바 9 의 인터페이스 에 포 함 될 수 있 는 내용 은 5.개인 적 인 방법 이다.
추상 적 인 방법 기본 형식:
public abstract ( );
인터페이스의 방법 은 암시 적 추상 이 고 장식 부 는 Public abstract(쓰 지 않 아 도 된다)일 수 밖 에 없다.
인터페이스의 사용:
1.인 터 페 이 스 를 직접 사용 할 수 없고 반드시 실현 해 야 한다.2.인터페이스의 실현 류 는 덮어 쓰 고 다시 쓰 는 것 을 인터페이스 의 모든 추상 적 인 방법 이 라 고 해 야 한다.3.실현 클래스 의 대상 을 만 들 고 사용 합 니 다.형식:XXXXXXImpl impl=new XXXXXXImpl();
구현 클래스 형식:
public class implements {
// ...
}
인터페이스 이름:XXX 인터페이스 구현 클래스 이름:XXX Impl
자바 8 의 새로운 기능,인터페이스 에 추 가 된 기본 방법 도 확장 방법 이 라 고 합 니 다.
기본 적 인 방법 은 인터페이스 에 실현 방법 이 있 을 수 있 고 실현 클래스 가 필요 하지 않다 는 것 이다.기본 방법 을 호출 할 때 구현 클래스 에 있 으 면 구현 클래스 에 있 는 것 을 호출 하고 없 으 면 인터페이스 에 있 는 것 을 찾 습 니 다.형식:Public 키워드 생략 가능
public default ( ){
}
왜 이런 특성 이 있어 야 합 니까?먼저,이전의 인 터 페 이 스 는 양날 의 검 이 었 다.좋 은 점 은 추상 을 향 한 것 이지 구체 적 인 프로 그래 밍 을 향 한 것 이 아니 라 는 것 이다.결함 은 인 터 페 이 스 를 수정 해 야 할 때 이 인 터 페 이 스 를 모두 실현 하 는 종 류 를 수정 해 야 한 다 는 것 이다.현재 자바 8 이전의 집합 프레임 워 크 는 foreach 방법 이 없 었 다.흔히 생각 할 수 있 는 해결 방법 은 JDK 에서 관련 인터페이스 에 새로운 방법 과 실현 을 추가 하 는 것 이다.그러나 이미 발 표 된 버 전에 대해 서 는 인터페이스 에 새로운 방법 을 추가 하 는 동시에 기 존의 실현 에 영향 을 주지 않 을 수 없다.그래서 도입 한 기본 방법 은그들의 목적 은 인터페이스의 수정 과 기 존의 실현 이 호 환 되 지 않 는 문 제 를 해결 하기 위 한 것 이다.
자바 8 의 새로운 기능,인터페이스 에 정적 방법 추가:
형식:Public 키워드 생략 가능
public static ( ){
}
인터페이스 에서 정적 방법 사용:인터페이스 이름 을 통 해 정적 방법 을 직접 호출 합 니 다.형식:인터페이스 이름.정적 방법 이름(매개 변수);메모:인터페이스 구현 클래스 의 대상 을 통 해 인터페이스 의 정적 방법 을 호출 할 수 없습니다.오류:
XXXXXXImpl impl = new XXXXXXImpl();
impl. ( );
자바 9 의 새로운 기능,인터페이스 에 개인 적 인 방법 이 추가 되 었 습 니 다:
여러 기본 방법(또는 여러 정적 방법)에서 중복 코드 가 있 는 문 제 를 해결 하 는 데 사용 합 니 다.
1.일반적인 개인 적 인 방법 으로 여러 기본 적 인 방법 간 에 중복 코드 문 제 를 해결 합 니 다.형식:
private ( ){
}
2.정적 사유 방법 으로 여러 정적 방법 간 의 중복 코드 문 제 를 해결한다.
private static ( ){
}
인터페이스의 상수 정의 와 사용:
인터페이스 에 있 는 상수 의 장식 부 호 는 Public static final(세 키 워드 는 생략 가능)일 수 있 습 니 다.인터페이스의 상수 값 을 부여 해 야 합 니 다.인터페이스 에 있 는 상수 의 이름,대문자 사용,어구 사용분할추천 이름 규칙)형식:
public static final = ;
1.인 터 페 이 스 는 정적 코드 블록 과 구조 방법 이 없다.2.하나의 종 류 는 여러 개의 인 터 페 이 스 를 동시에 실현 할 수 있다.격식.
public class XXXXXXImpl implements InterfaceA,InterfaceB {
。
}
3.실현 류 가 실현 하 는 여러 인터페이스 에서 추상 적 인 방법 이 있 으 면 유형 을 다시 쓰 면 된다.4.실현 류 가 재 작성 인터페이스 에 있 는 모든 추상 적 인 방법 을 덮어 쓰 지 않 으 면 실현 류 는 추상 류 여야 한다.abstract 수식 사용.5.클래스 가 실 현 된 여러 인터페이스 에 이름 을 바 꾸 는 기본 방법 이 있다 면 클래스 는 충돌 하 는 기본 방법 을 다시 써 야 합 니 다.6.계승 하 는 부모 클래스 의 방법 과 인터페이스 의 기본 방법 이 충돌 하여 부모 클래스 의 방법 을 우선 호출 합 니 다.계승 우선 인터페이스 구현.
인터페이스 간 다 중 계승:
1.클래스 와 클래스 간 은 단독 상속 이 고 직접 부 류 는 하나 밖 에 없다.2.클래스 와 인터페이스 간 에 여러 개의 인 터 페 이 스 를 실현 할 수 있다.3.인터페이스 와 인터페이스 사 이 는 다 중 계승 이다.형식:
public interface extends A , B {
}
메모:여러 부모 인터페이스 에서 기본 적 인 방법 이 반복 되 며,하위 인 터 페 이 스 는 기본 적 인 방법 으로 다시 써 야 합 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
STL 학습노트(6) 함수 객체모방 함수는 모두pass-by-value이다 함수 대상은 값에 따라 전달되고 값에 따라 되돌아오기 때문에 함수 대상은 가능한 한 작아야 한다(대상 복사 비용이 크다) 함수 f와 대상 x, x 대상에서 f를 호출하면:...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.