[Java] 타입 변수(기본 타입 vs 참조 타입)

Hyeo_Ni__·2024년 10월 19일
0

Java

목록 보기
1/1
post-thumbnail

자바를 공부하며, 몰랐던 얕은 지식을 채우기 위해
알고 있으면 이해하는데 도움이 될 것 같은 용어들을 정리해보고자 한다.

오늘은 그 중 타입 변수에 대해 배워보자!



📚 타입 변수

변수가 어떤 타입인지 나타내는 것으로
변수는 특정한 데이터 타입을 기반으로 선언,
데이터 타입에 따라 해당 변수에 저장할 수 있는 값의 종류와 그 값을 처리하는 방식이 결정

이때 타입 변수는 크게 두 가지로 나뉘는데
기본 타입 변수(Primitive Type Variable)참조 타입 변수(Reference Type Variable)로 나뉜다.

📝 기본 타입 변수(Primitive Type Variable)

값이 직접 변수에 저장되는 변수로 흔히 자료형(Data Type)을 공부할 때 알게되는
int, float, char, string 등과 같은 기본 타입이다.

✍ 예제 코드

int number = 10;

위와 같이 int는 변수 number의 타입이며, number은 int 타입의 변수다. 라고 말한다.


📝 참조 타입 변수(Reference Type Variable)

객체의 메모리 주소를 저장하는 변수로 객체의 실제 데이터를 저장하는 것이 아닌,
객체가 저장된 메모리 위치를 참조하는 변수이다.


클래스나 배열, 인터페이스 등이 참조 타입으로 간주된다.

✍ 예제 코드

Car car = new Car();

위 코드에서 Car car = new Car();는 두 부분으로 나뉜다.

  • Car car: Car라는 클래스 타입의 변수를 선언한 것으로 이 변수는 Car 객체를 참조할 수 있다.
  • new Car(): Car 클래스의 새로운 인스턴스(객체)를 생성하는 구문으로, new 키워드는 메모리에 새로운 Car 객체를 할당하고, 그 객체의 참조를 car 변수에 저장합니다.

✍ 예제 응용 코드

class Car {
    String model;
    int year;
    
	public Car(String model, int year) {
        this.model = model;
        this.year = year;
    }
    
    public void displayInfo() {
        System.out.println("Model: " + model + ", Year: " + year);
    }
}

public class Main {
    public static void main(String[] args) {
        Car car = new Car("AVANTE", 2000);
        car.displayInfo();
    }
}

💻 출력

Model: AVANTE, Year: 2000

위 코드를 간단히 해석해보자면 다음과 같다.

  • String model; int year;
    Car 클래스는 두 개의 멤버 변수를 가진다. 이 변수들은 각각 모델과 연식을 저장하기 위해 사용
  • 생성자 public Car(String model, int year)
    생성자 Car 클래스의 객체가 생성될 때 호출되는 메서드로 각각의 값을 인자로 받아
    Car 객체가 생성될 때 각 값을 멤버 변수에 저장

💡 동작 순서

  1. 클래스 정의
    : Car 클래스가 정의된다. 클래스에는 model과 year라는 두 개의 멤버 변수와, 객체가 생성될 때 이를 초기화하는 생성자가 정의
  2. 객체 생성
    : main() 메서드에서 Car 객체가 생성, 이때 생성자에 각 값이 전달되어 변수 초기화
  3. 메서드 호출
    : car.displayInfo() 호출
profile
개발자로 성장 중 입니다.

0개의 댓글