[JAVA]로컬클래스 예제

    package 로컬클래스;
    
    public class A {
    	//메소드
    	void useB() {
    		//로컬 클래스
    		class B{
    			//인스턴스 필드
    			int field1 = 1;
    			//정적필드
    			static int field2 = 2;
    			//생성자
    			B(){
    				System.out.println("B생성자 실행");
    			}
    			//인스턴스 메소드
    			void method1() {
    				System.out.println("B method1 실행");
    			}
    			//정적 메소드
    			static void method2() {
    				System.out.println("B method2 실행");
    			}
    		}
    		//로컬 객체 생성
    		B b = new B();
    		//로컬 객체의 인스턴스 필드와 메소드 사용
    		System.out.println(b.field1);
    		b.method1();
    		//로컬 클래스의 정적 필드와 메소드 사용
    		System.out.println(b.field2);
    		b.method2();
    		
    	}
    
    }
    
    package 로컬클래스;
    
    public class AExample {
    	public static void main(String[] args) {
    		//A객체 생성
    		A a  = new A();
    		//A 메소드 호출
    		a.useB();
    	}
    }
    /*
    B생성자 실행
    1
    B method1 실행
    2
    B method2 실행
    */
    

    'JAVA' 카테고리의 다른 글

    [JAVA]예외처리  (0) 2024.09.04
    [JAVA]접근제한자  (0) 2024.09.04
    [JAVA] 정적 멤버클래스 예제  (0) 2024.09.04
    [JAVA] 인스턴스 멤버클래스 예제  (0) 2024.09.04
    [JAVA] 중첩선언과 익명객체  (3) 2024.09.04

    댓글