UCA, UCP = 유니티 공인자격증
// 내부 클래스 inner class = nested class
// 하나의 클래스 내부에 선언된 또 다른 클래스를 의미, 두 클래스가 서로 긴밀한 관계가 있거나, 하나의 클래스 또는 메소드에서만 사용되는 클래스인 경우 사용할 수 있는 기법
// 내부 클래스의 사용 장점 : 클래스가 여러 클래스와 관계를 맺지 않고, 내부에 구성하는 것으로 수정과 코드 이해가 더 편리해지는 부분, 논리적 그룹화
// 내부에 있는 클래스는 외부 클래스가 사용되지 않으면, 생성하지 하지 않으면 접근하는 것이 불가능
// 만약 내부 클래스가 private라면 캡슐화 보장도 가능
// 내부 클래스의 장점 : 크게 복잡하지 않고, 관리도 쉽다.
//내부 클래스의 기본 유형
//1. instance class
//외부 클래스의 멤버 변수 선언 위치에 선언되어 있는 클래스는 인스턴스 멤버처럼 객체 생성 이후 접근할 수 있습니다.
//ex) Car c = new Car();
// Car.Tire t = c.new Car();
//2. static calss
//static 멤버처럼 다루어지는 클래스입니다.
//해당 클래스는 외부 참조를 진행하지 않습니다.
//그래서 내부 클래스의 경우는 static으로 구현되는 경우가 많고 선호됩니다.
//사용방법 ) static class로 만든 클래스 형태의 메소드를 외부 클래스에 설계하여 그 값을 통해 접근하도록 설계
// 참고) 이 기능을 활용해 사용되는 디자인 패턴 = 싱글톤 패턴
//3. local class
//외부 클래스의 메소드 영역에서 만들어지는 클래스를 의미
//해당 기능 안에서만 사용이 가능
//지역변수와 비슷한 개념이고 클래스를 사용하고 버리는 용도로 쓰게 되며 다른 곳에서는 접근과 사용 자체가 불가능
//4. anoymous class
//단 하나의 객체를 생성하는 일회용 클래스
//클래스의 선언과 동시에 객체를 생성하는 특징을 가지고 있음.
//생성자가 따로 존재하지 않음
'공부기록 > Java' 카테고리의 다른 글
11월 4일 Java - eclipse (0) | 2023.11.05 |
---|---|
전자정부프레임워크 - 샘플 (0) | 2023.10.29 |
10월 22일 Java - eclipse (0) | 2023.10.25 |
10월 21일 Java - eclipse (1) | 2023.10.21 |
10월 15일 Java - eclipse (0) | 2023.10.15 |