자바 의 인터페이스 와 실례 화
3199 단어 자바
이틀 전에 프 록 시 모드 를 배 울 때 생각 났 는데 인터페이스 가 new 가 되 나 요?
인 터 페 이 스 는 특수 한 추상 류 로 인터페이스의 방법 은 모두 기본 값 이다. public abstract 라 고 말 했다.추상 적 인 방법 은 new 가 될 수 없습니다. 예화 되 어 서 는 안 됩 니 다. 왜 new Action Listener () {} 가 가능 합 니까?더 이상 말 하지 않 고 자 료 를 직접 보다.
자료
자바 는 여러 종 류 를 동시에 계승 할 수 없 지만 여러 인 터 페 이 스 를 계승 할 수 있 습 니 다.인 터 페 이 스 는 여러 종류의 변 형 된 계승 에 사용 할 수 있다.왜 new Action Listener () {} 이렇게 할 수 있 습 니까? 인터페이스 가 new 일 수 있 습 니까?new Action Listener () {} 이런 형식 은 {} 에서 인터페이스 에 다시 쓰 는 방법 입 니 다.인 터 페 이 스 는 new 가 되 지 않 지만 익명 류 를 만 들 수 있 습 니 다. 물론 익명 류 는 인터페이스 만 실현 하 는 것 이 아 닙 니 다.Action Listener 인 터 페 이 스 를 실현 하 는 구체 적 인 종 류 를 쓰 는 비용 을 생략 했다.
인 터 페 이 스 는 new 로 직접 할 수 없 지만 다른 종류의 변수 로 사용 할 수 있 습 니 다.이 인 터 페 이 스 를 실현 하 는 클래스 가 있다 면 new!간단 한 예 를 들 어 자바. lang. List 는 인터페이스 이지 만 List < String > list = new Array List < String > ();Array List 가 List 인 터 페 이 스 를 실 현 했 기 때문에 오류 가 없습니다.인터페이스 프로 그래 밍 은 다 중 계승 을 실현 하기 위해 자바 웹 의 spring 프레임 워 크 에 많이 사용 된다.
간단 한 예
。 , 。
Thread thread = new Thread(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
}
});
------------------------------------------------------------------------------------------------------------------------- class Test {
int start=1;
int end=100;
public static void main(String[] args) {
new Test().go();
}
void go() {
Runnable a=new Runnable() {
public void run() {
for(int i=start;i<end;i++)
System.out.println(i);
}
};
Thread t=new Thread(a);
t.start();
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Is Eclipse IDE dying?In 2014 the Eclipse IDE is the leading development environment for Java with a market share of approximately 65%. but ac...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.