자바 익명 내부 클래스
익명 내부 클래스는 두 가지 방법으로 사용할 수 있습니다.
우선 목적을 위해
If the purpose of class is only to override method ex: purpose of creating B class to override fun1
in this case you don't need to create B class
class A{
void fun1(){
System.out.println("fun1 in A ");
}
}
class B extends A{
void fun1(){
System.out.println("fun1 in B");
}
}
public class Program1
{
public static void main(String[] args) {
// A a = new B();
// a.fun1(); //fun1 in B
A obj = new A(){
void fun1() {
System.out.println("Anonymous Overidden method ");
}
// can't create
// void fun2(){
// System.out.println("fun2 method ");
// }
};
obj.fun1(); // Anonymous Overidden method
}
}
인터페이스가 있는 익명 클래스
interface I1{
void fun1();
}
class Implementor implements I1{
public void fun1(){
System.out.println("Implementation of fun1");
}
}
if role of implementor class is only to implement I1 interface , so you can create anonymous inner class , you don't need to create implementor class
public class Program2 {
public static void main(String[] args) {
// Implementor i1 = new Implementor();
// i1.fun1(); //Implementation of fun1
I1 i = new I1(){
public void fun1(){
System.out.println("Anonymous implementation");
}
};
i.fun1(); // Anonymous implementation
}
}
Reference
이 문제에 관하여(자바 익명 내부 클래스), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/sanjayprajapat/java-anonymous-inner-class-2fn8텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)