먼저 Data Type에 대해서 알아보면 다음과 같다.
char는 문자형, 정수형 어디에도 들어가더라
primitive type
reference type
쉽게 말하면, 8가지의 기본형들에 대해서 객체로 포장해 주는 클래스를 "래퍼 클래스"라고 한다.
예를 들어, 메소드의 인수가 기본형이 아닌 객체 타입만이 요구되는 경우 기본형을 그대로 사용할 수 없으니 래퍼클래스를 사용하게 되는 타이밍이다.
대부분 첫글자를 대문자로 바꾸면 되지만, int 와 char형은 첫글자를 대문자로 하고, 추가로 풀네임을 사용한다.
래퍼 클래스는 객체이다.
객체는 당연히 연산이 되지 않으므로, 연산을 필요로 하는 경우에는 다음과 같이 사용하면 된다.
주석 부분을 사실 그대로 사용해도 되는데 그것이 되는 이유는 오토 박싱과 오토 언박싱 기능덕분이다.
오토 박싱 : 컴파일러에 의해 기본타입이 자동으로 래퍼클래스로 변환되는 것.
말 그대로 내부 클래스
클래스 내의 클래스를 사용하는 것을 Inner Class라고 한다.
장점
Inner Class를 생성 시, bin폴더에 Outer$~~~.class 파일이 생성되는데, src폴더에서는 생성되지 않지만 저런 모양으로 생성되게 된다
class가 변수가 된다고 생각하면된다
익명함수처럼 사용하는 익명 이너 클래스
인터페이스나 추상클래스를 사용시 많이 사용하게 된다.
잘안써서 정리 안해버려~