[JAVA_Back-End]

JAVA의 타입 본문

Programming/JAVA

JAVA의 타입

너굴위 2024. 2. 13. 15:59
728x90
반응형

JAVA의 원시타입(자료형)

1byte = 8bit

크기 1 byte 2 byte 4 byte 8 byte
자료형 byte short int long
boolean char float double

 


접근 제어자의 종류

private  - 해당 클래스 내에서만 접근 가능

default  - 해당 패키지 내에서만 접근 가능 

protected  - 상속한 클래스 내에서만 접근 가능

public  - 전체 영역에서 접근 가능

 

접근제어자를 사용하는 이유?

- 외부에 보여주고 싶은 정보들을 선택적으로 제공하지 위함(캡슐화)


원시타입과 참조타입

원시타입(Primitive Type)?

- Java에서 8개(위의 표) 밖에 존재하지 않는 타입.

- 실제 데이터(값)을 저장하는 타입

- 멤버변수 초기화 시, 기본 값을 가짐

 

참조타입(Reference Type)?

- 원시타입을 제외한 타입 = 객체가 생성된 메모리의 주소를 저장하는 타입

- Object클래스이거나 상속하는 클래스들로 이루어짐 (문자열, 배열, 열거형 상수, 클래스, 인터페이스 등)

- Java에서 실제 객체는 JVM 힙 영역에 저장, 참조 타입 변수는 실제 객체의 주소를 JVM 스택 영역에 저장.

- 객체를 사용할 때만다 참조 변수에 저장된 객체의 주소를 불러와 사용

- Object 타입은 null포인터를 가질 수 있음

- 멤버변수의 초기화 시, 참조타입은 null 포인터를 가질 수 있음

ex) Person p = new Person(); 

      p라는 이름의 메모리 공간이 스택 영역에 생성

     생성된 p의 인스턴스는 힙 영역에 생성. 즉 스택 영역에 생성된 참조 변수 p는 힙 영역에 생성된 p의 인스턴스 주소 값을 가지게 된다.

728x90
반응형