레퍼런스 데이터 타입의 역할
레퍼런스 데이터 타입(reference data type)은 객체의 주소(reference)를 저장하는 데이터 타입입니다. 객체는 클래스로부터 생성되며, 레퍼런스 데이터 타입은 이러한 객체의 인스턴스를 다루기 위해 사용됩니다. 자바에서는 모든 클래스가 레퍼런스 데이터 타입입니다.
레퍼런스 변수와 객체 생성
레퍼런스 데이터 타입을 사용할 때는 객체를 생성하고, 이를 레퍼런스 변수에 할당해야 합니다. 객체는 new 키워드를 사용하여 동적으로 메모리에 생성됩니다. 이때 레퍼런스 변수에는 생성된 객체의 주소가 저장됩니다.
레퍼런스 변수와 객체 생성 예제
public class ReferenceDataTypeExample {
public static void main(String[] args) {
// 객체 생성과 레퍼런스 변수 할당
String str = new String("Hello, World!");
// 레퍼런스 변수를 통한 객체 접근
System.out.println(str);
}
}
- String 클래스의 객체를 생성하고, 이를 str 레퍼런스 변수에 할당하여 사용합니다.
객체의 속성과 메서드
레퍼런스 데이터 타입은 객체의 속성과 메서드에 접근할 수 있는 수단입니다. 객체의 속성은 클래스 내의 변수로 정의되며, 메서드는 클래스 내에서 정의된 함수입니다. 레퍼런스 변수를 통해 객체의 속성과 메서드에 접근하여 사용할 수 있습니다.
객체의 속성과 메서드 예제
public class Car {
// 속성(멤버 변수)
String brand;
String model;
int year;
// 메서드
void start() {
System.out.println("출발");
}
void stop() {
System.out.println("중지");
}
void displayInfo() {
System.out.println("Brand: " + brand);
System.out.println("Model: " + model);
System.out.println("Year: " + year);
}
}
public class Example {
public static void main(String[] args) {
// 객체 생성
Car myCar = new Car();
// 객체의 속성 설정
myCar.brand = "현대";
myCar.model = "아반떼";
myCar.year = 2022;
// 객체의 메서드 호출
myCar.start();
myCar.stop();
// 객체의 정보 출력 메서드 호출
myCar.displayInfo();
}
}
- Example 클래스에서는 Car 클래스의 객체를 생성하고, 속성을 설정하고 메서드를 호출하여 객체의 기능을 사용합니다.
객체의 라이프 사이클과 가비지 컬렉션
객체는 생성되어 사용되다가 더 이상 참조되지 않을 때 가비지 컬렉션에 의해 자동으로 메모리에서 해제됩니다.
프로그래머가 직접 메모리 관리를 신경쓰지 않아도 되도록 해줍니다.
'JAVA > 자바 기본 문법' 카테고리의 다른 글
[JAVA] 변수의 범위와 수명 (지역 변수, 인스턴스 변수, 클래스 변수) (0) | 2023.08.10 |
---|---|
[JAVA] 변수 선언과 초기화 (0) | 2023.08.09 |
[JAVA] 기본 데이터 타입 (0) | 2023.08.09 |
[JAVA] main 메서드와 프로그램 실행 (0) | 2023.08.09 |
[JAVA] 패키지와 import (0) | 2023.08.09 |