본문 바로가기

자바

원시 타입과 참조 타입

자바의 자료형은 크게 원시 타입(Primitive type)과 (Reference type)이 있다. 

 

Java Data Type 
ㄴ Primitive Type
    ㄴ Boolean Type(boolean)
    ㄴ Numeric Type
        ㄴ Integral Type
            ㄴ Integer Type(short, int, long)
            ㄴ Floating Point Type(float, double)
        ㄴ Character Type(char)
ㄴ Reference Type
    ㄴ Class Type
    ㄴ Interface Type
    ㄴ Array Type
    ㄴ Enum Type
    ㄴ etc.

 

Primitive Type

자료형 키워드 크기 기본값
논리형 boolean 1byte  false
문자형 char 2byte /u0000
정수형 byte 1byte 0
short 2byte 0
int 4byte 0
long 8byte 0
실수형 float 4byte 0.0
double 8byte 0.0

 

Reference Type

 

java.lang.Object 클래스를 상속하는 모든 클래스

ex) class, interface, array enum

 

예시

A a = new A(100);
A b = a;
System.out.println("A : " + a.getA());
System.out.println("B : " + b.getA());
b.setA(382);
System.out.println("A : " + a.getA());
System.out.println("B : " + b.getA());


/* 실행 결과
A : 100
B : 100
A : 382
B : 382

*/

 

String Class

 

원시 타입이지만 참조 타입처럼 사용하며 불변 객체이다.

"A" + "B"처럼 사용할 수 있지만 기존의 "A"에 "B"를 더하는 것이 아닌 "AB"라는 새로운 문자열을 생성한다.