on
자바 외부클래스/ 내부클래스
자바 외부클래스/ 내부클래스
1. 외부클래스
- 외부클래스는 내부클래스를 포함한 클래스 이다.
2. 내부클래스
- 내부클래스(inner class)는 외부 클래스 안에 선언된 클래스를 말한다.
- 내부클래스는 외부클래스(outer class)의 변수와 메서드를 마치 자신의 것처럼 가져와서 자유롭게 사용할 수 있다.
- 내부 클래스는 외부클래스의 내부적인 용도로 사용하고자 하는 경우에 사용된다.
3. 내부클래스 객체 생성하는 법
가. 내부클래스 객체를 생성하려면 먼저 외부클래스 객체를 생성해야 한다.
나. 내부클래스 객체 생성법 :
외부클래스명.내부클래스명 내부객체명=외부객체명.new 내부클래스명();
다. 내부클래스 명은 외부클래스명$내부클래스명.class파일로 컴파일 된다.(이름있는 내부클래스명으로 컴파일)
ex) Inner.java -> Outer$Inner.class파일로 컴파일된다.
package test; class Outer{//외부클래스 정의 int data=100; class Inner{//내부클래스 정의 public void p(){ System.out.println(data+"입니다."); //외부클래스에서 선언된 변수를 내부클래스에서 사용하고 있다. } } } public class OuterInner { public static void main(String[] args) { Outer outObj=new Outer(); Outer.Inner inObj=outObj.new Inner(); } }
from http://betterwave.tistory.com/29 by ccl(A) rewrite - 2021-12-11 00:27:35