Wrapper 클래스
자바의 데이터 타입은 다음의 표와 같이 프리미트브 타입과 레퍼런스 타입으로 나뉜다.
프리미티브 타입은 수치, 문자등 간단한 데이터를 표현할 수 있는 타입이고 그밖의 제이터 타입은 모두 레퍼런스 타입으로 분류된다.
경우에 다라서는 프리미티브 타입의 데이터를 객체로 만들어야할 필요가 있는데 이러한경우 사용하는게 Wrapper클래스이다.
Wrapper클래스 : 프리미티브 타입의 값을 담는 객체를 생성하는 것이다.
클래스이름 |
프리미티브 타입 |
간단한 예 |
Byte |
byte |
Byte byteA = new Byte((byte) 1); |
Short |
short |
Short shortA = new Short((short) 231); |
Integer |
int |
Integer integerA = new Integer(111); |
Long |
long |
Long longA = new Long(10000L); |
Character |
char |
Character characterA = new Character('나'); |
Float |
float |
Float floatA = new Float(13.5f); |
Double |
double |
Double doubleA = new Double(14.55); |
Boolean |
boolean |
Boolean booleanA = new Boolean(true); |
표에 있는 예처럼 Wrapper클래스로 만든 객체를 Wrapper객체라고 한다.
하나의 Wrapper클래스는 하나의 프리미티값을 담을 수 있다. 값은 생성자 파라미터로 넘겨주어야 한다.
이제 래퍼 객체 안에 있는 프리미티브 타입의 값을 가져오는 방법에 대해 알아보자
래퍼객체 안에 있는 프리미트브 값은 래퍼클래스의 메소드를 이용하면 가져올수 있다.
값을 가져오는 메소드의 이름은 " 프리미티브타입의이름Value" 로 사용할수 있다
자동 Boxing과 자동 Unboxing
Boxing - 프리미티브 타입의 값을 래퍼 객체로 만드는것.
Unboxing - 래퍼 객체를 프리미티브 타입의 값으로 만드는것.
ex)
자동 Unboxing에 대해 알아 보겠습니다. 자동 Unboxing는 래퍼객체 → 프리미트브 타입 값으로의 변환을 말합니다.
ex)
reason - 위의 예제에서는 Integer 객체와 int 타입의 값을 더했다. +연산자는 프리미티브 타입의 값을 더하는 연산자이기 때문에
Integer 객체로부터 int값이 자동으로 추출된후에 더하기 연산이 실행됩니다
자동 Boxing에 대해 알아보겠습니다. 자동 Boxing는 프리미티브 타입 값 → 래퍼 객체로의 변환을 말한다.
ex)
reason - 위의 예제에서는 double 타입의 프리미티브값을 넘겨 Double 타입 파라미터를 받는 메소드를 호출하였습니다. 이러한 경우 double타입의 프리미트브 값을 갖는 Double 객체가 자동으로 생성되어 메소드에 넘겨집니다
'Java' 카테고리의 다른 글
Java GUI 프로그래밍 (2) (0) | 2017.06.23 |
---|---|
Java GUI를 이용한 간단한 덧셈 프로그램 (0) | 2017.06.23 |
Java GUI 프로그래밍 (1) (0) | 2017.06.22 |
ArrayList란 (0) | 2017.06.11 |
Object클래스의 getClass 메소드란? (0) | 2017.06.09 |
댓글