자바에서 abstract class
에 대한 샘플을 만들려고 시도했을 때 실수로 익명의 내부 클래스를 Eclipse에서 얻었습니다.익명 내부 클래스 란 무엇입니까?
아래 코드를 붙여 넣었습니다. abstract class
이 익명의 클래스와 어떤 관련이 있는지 이해할 수 없습니다.
package com.Demo;
abstract class OuterClass {
abstract void OuterClassMethod();
}
public abstract class InnerClass extends OuterClass {
public static void main(String[] args) {
InnerClass myInnerClass = new InnerClass() {
@Override
void OuterClassMethod() {
int OuterClassVariable = 10;
System.out.println("OuterClassVariable" + " " + OuterClassVariable);
}
};
}
}
특별한 방법으로는 관련이 없습니다. 그것은 단지 "일반적인 추상 클래스"일뿐입니다. 익명 클래스는 "정상적인"Java 클래스를 통해 구현되고 상속 (추상 유형 포함) 및 인터페이스 계약은 동일하게 작동합니다. – user2246674