본문 바로가기
IT/JAVA

JAVA - 내부 클래스

by 삐약 개발자 2024. 11. 27.
반응형

내부클래스란?

클래스 내에 선언된 클래스! 외부 클래스와 내부 클래스가 서로 연관되어 있을때 사용

class Outer { // 외부 클래스

	class Inner {
		// 인스턴스 내부 클래스
        // 실무 - Outer 에서만 쓰고싶을때
	}

	static class StaticInner {
		// 정적 내부 클래스
	}

	void run() {
		class LocalInner {
		// 지역 내부 클래스
		}
	}
}

 

 

 선언 위치에 따른 이너 클래스의 구분

종류 선언 위치 사용 가능한 변수
인스턴스 내부 클래스(instance inner class) 외부 클래스의 멤버변수 선언위치에 선언(멤버 내부 클래스) 외부 인스턴스 변수, 외부 전역 변수
정적 내부 클래스(static inner class) 외부 클래스의 멤버변수 선언위치에 선언(멤버 내부 클래스) 외부 전역 변수
지역 내부 클래스(local inner class) 외부 클래스의 메서드나 초기화블록 안에 선언 외부 인스턴스 변수, 외부 전역 변수
익명 내부 클래스(anonymous inner class) 클래스의 선언과 객체의 생성을 동시에 하는 일회용 익명 클래스 외부 인스턴스 변수, 외부 전역 변수

이제 이어지는 콘텐츠를 통해 세 가지 종류의 내부 클래스에 대해서 좀 더 살펴보도록 하겠습니다.

 

 

staic이 없으면 new Outer 하기 전에 메서드 호출 안됨!!

반응형

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

JAVA - 객체 지향 심화 1) 상속  (0) 2024.11.27
JAVA - 객체지향 심화  (0) 2024.11.27
JAVA - 생성자(Constructor)  (1) 2024.11.26
JAVA - 필드(Field)와 메서드(Method)  (0) 2024.11.26
JAVA - OOP , 클래스와 객체  (1) 2024.11.26