IT 트랜드 공유

[Class 파일] class명에 $는 뭘까요? 본문

JAVA

[Class 파일] class명에 $는 뭘까요?

내나위 2024. 10. 7. 16:12
728x90
반응형
SMALL

1. 결론!

App.java를 컴파일 할경우 App 클래스 내 여러개의 InnerClass가 있다면 App$~.class가 여러개 생성될 수 있다.

App 클래스 App.class
App.java 내 InnerClass 클래스 App$InnerClass.class

 

2. App.java 를 컴파일 했을때 아래와 같이 App.class와 App$InnerClass.class가 생성

App.java
package ex01_innerclass;

public class App {

    // Inner Class
    class InnerClass {
        public void displayMessage() {
            System.out.println("Message from the InnerClass");
        }
    }

    // Method in the App class to use the inner class
    public void useInnerClass() {

        System.out.println("Message from the AppClass");
        InnerClass inner = new InnerClass();
        inner.displayMessage();
    }

    public static void main(String[] args) {
        // Creating an instance of App
        App app = new App();
       
        // Using inner class through the app class method
        app.useInnerClass();
    }
   
}
결과
(.class)

 

3. 테스트 방법

-. 첨부 파일(App.java)를 javac로 컴파일 하게 되면 2개의 class가 생성됨을 확인 할 수 있다.

Microsoft Windows [Version 10.0.19045.4780]
(c) Microsoft Corporation. All rights reserved.

D:\java_work\ex01_innerclass>javac App.java

D:\java_work\ex01_innerclass>

App.java
0.00MB

 

728x90
반응형
LIST