1. 클래스 자료형(Class Type)
1️⃣ 클래스 자료형이란?
- 사용자가 정의한 구조(클래스)를 기반으로 만들어지는 자료형
- 사용자가 직접 정의한 참조 자료형
- 해당 클래스에서 생성된 객체들이 갖는 형태와 특성을 정의하는 틀(blueprint)
- 클래스로 만들어진 자료형 = 객체를 생성하기 위한 사용자 정의 자료형
- 객체(Object)를 만들기 위한 설계도이자 하나의 자료형
2️⃣ 클래스 자료형의 핵심 개념
1) 사용자 정의 자료형(User-Defined Type)
기본 자료형(int, double, boolean 등)과 달리 프로그래머가 직접 구조를 설계하여 만든 자료형
2) 변수 선언 시 자료형 역할
클래스 이름이 자료형처럼 사용됨
3) 객체 생성의 기반이 되는 틀
클래스 안에 속성(변수)과 메서드(기능)를 정의하고, 해당 클래스 자료형으로 객체를 만들면 그 속성과 기능을 사용할 수 있음.
4) 복합적인 데이터 구조를 가질 수 있음
- 기본형을 조합
- 다른 클래스 자료형을 포함
- 메서드를 통해 동작 정의
3️⃣ 클래스 자료형의 예시
class Person {
String name;
int age;
}Person👉 하나의 새로운 자료형
String,int👉 멤버 변수(필드)
Person p = new Person();📌
p의 자료형은 Person 클래스4️⃣ 클래스 = 참조 자료형
Person p1 = new Person();
Person p2 = p1;p1,p2는 같은 객체의 주소를 가리킴
- 하나를 바꾸면 다른 쪽에서도 보임
5️⃣ 클래스 자료형의 메모리 구조
Person p = new Person();p→ Stack 영역 (참조값)
- 실제 객체 → Heap 영역
Stack Heap
p ─────────▶ Person 객체6️⃣ 클래스 자료형의 특징
1) 여러 값 묶기
class Student {
int id;
String name;
double score;
}2) 메서드 포함 가능
class Student {
int score;
void printScore() {
System.out.println(score);
}
}3) null 가능
Student s = null; // 가능⚠️ 사용 시 주의
s.printScore(); // NullPointerExceptionShare article