Anonymous Class2 [Java] 익명 클래스(Anonymous Class)와 람다식(Lambda Expression) 익명클래스(Anonymous Class) interface Printable { void print(); } class Printer implements Printable { public void print(String s) { System.out.println(s); } } class Example { public static void main(String[] args) { Printable prn = new Printer(); prn.print("hi"); } } 위 코드에서 Printer 클래스를 보자. Printer 클래스의 정의와 Printer 인스턴스의 생성이 분리되어 있다. 하지만 '익명 클래스'의 형태를 사용하면 클래스의 정의와 인스턴스 생성을 하나로 묶을 수 있다. class Exampl.. 2022. 9. 13. [Java] 네스티드 클래스(Nested Class)와 내부 클래스(Inner Class) class Outer { class Nested { ... } // 네스티드 클래스 } 클래스 내에 정의된 클래스를 네스티드 클래스(Nested Class)라고 하고, 이를 감싸는 클래스를 외부 클래스(Outer Class)라고 한다. 네스티드 클래스는 static 선언 여부를 기준으로 Static 네스티드 클래스와 Non-static 네스티드 클래스로 나뉜다. Static 네스티드 클래스(Static Nested Class) class Outer { private static int num = 0; static class Nested1 { void add(int n) { num += n; } } static class Nested2 { int get() { return num; } } } Outer.N.. 2022. 9. 13. 이전 1 다음