해당 클래스에 대하여
프리미티브(원시) 타입을 객체로 표현할 수 있도록 도와주는 클래스.
프리미티브 타입은 실제 데이터 값을 저장하는 타입.
반대로 레퍼런스(참조) 타입은 객체를 참조하는 타입.
클래스명 | 프리미티브 타입 |
---|---|
Byte | byte |
Short | short |
Integer | int |
Long | long |
Character | char |
Float | float |
Double | double |
Boolean | boolean |
오토박싱, 언박싱
박싱은 프리미티브 타입의 데이터를 래퍼 클래스의 객체로 만드는 과정이다.
언박싱은 반대 개념.
1 | public class Wrapper { |
래퍼 클래스에 대입된 값은 프리미티브 타입이 아니라 참조 타입이기 떄문에 주소값을 통한 비교가 필요하다.
부연설명) 인스턴스(객체)를 생성하면서 Heap 에 저장되고 객체 변수는 Stack 에 저장되어 주소값을 갖기 때문이다.
따라서equals
를 사용하거나 데이터를 프리미티브 타입으로 변환(UnBoxing) 후 값을 비교해야 한다.
자료구조
데이터를 효율적으로 사용할 수 있도록 구조를 만들어 둔 것.
종류 | 클래스명 |
---|---|
List(리스트) | ArrayList, LinkedList(Vector) |
Stack(스택) | LinkedList(Stack) |
Queue(큐) | LinkedList |
Hash Table(해시 테이블) | HashMap |
Set(집합) | HashSet |
스택이란 데이터를 넣은 순서의 역순으로만 꺼낼 수 있는 자료구조이다.
부연설명) 바구니를 생각하면 쉽다. 바구니에 맨 안쪽에 있는 물건을 바로 꺼낼 수 없는 것처럼.
큐란 데이터를 넣은 순서와 같은 순서로만 꺼낼 수 있는 자료구조이다.
부연설명) 놀이기구를 타기 전 기다린 순서대로 놀이기구에 탑승하는 것처럼.
셋(집합)이란 수학에서 말하는 집합처럼 데이터를 중복으로 저장하지 않는 자료구조이다.
- 다음 포스팅 내용은, 네스티드 클래스와 인터페이스에 대해서 설명하도록 함.