티스토리 뷰

LANGUAGE/JAVA

[JAVA] 내부클래스

찰떡쿠키부스트 2017. 11. 15. 10:10

 

 

# 내부클래스


1 내부멤버클래스
2 내부로컬클래스
3 내부무명클래스

# 내부멤버클래스


[ex]
클래스주소.멤버변수
클래스주소.메서드()
클래스주소.new 내부멤버클래스()

내부클래스는 외부클래스의 모든 멤버변수와 메서드에
주소생성없이 접근할 수 있다.

# 내부로컬클래스


내부로컬클래스에서는 로컬변수를 접근할 수 없다.
만약 로컬변수에 접근하고 싶다면 final선언해야한다.

# 내부무명클래스

 
[sy] new 상위클래스명(){};

객체를 전달하는 곳에 위치한다.
클래스선언과 객체생성이 한곳에 묶여져 있다.
 객체를 한번만 생성 할 수 있다.

ex) 객체가 들어올 수 있는 위치 세곳(//here)  
class A{}
class B{
        void a(A o){}
        
        A b(){ return //here }
 
        void c(){
        a(//here);
        }

        void d(){
        A o=//here
        }
}

class A{}
class B{
        void a(A o){}
        
        A b(){ return new A(){}; }
 
        void c(){
        a(new A(){});
        }

        void d(){
        A o=new A(){};
        }
}

'LANGUAGE > JAVA' 카테고리의 다른 글

[JAVA] Exception  (1) 2017.11.15
[JAVA] java.awt패키지 관련  (0) 2017.11.15
[JAVA] 자바의 진수표현  (0) 2017.11.15
[JAVA] 상수 & 인터페이스  (0) 2017.11.15
[JAVA] 자료형변환  (0) 2017.11.15
댓글