
프로그래밍 언어에서 변수는 데이터(data)를 저장할 수 있는 메모리상의 공간을 의미한다. 변수에는 데이터 타입(정수, 실수, 문자, 문자열, 참/거짓 등)과 일치하는 단 하나의 값만 저장할 수 있다.
변수에는 기본형변수와 참조형변수가 있다.




public class Main {
public static void main(String[] args) {
int age = 25; // 정수형
double height = 175.5; // 실수형
char grade = 'A'; // 문자형
boolean isStudent = true; // 논리형
System.out.println("나이: " + age);
System.out.println("키: " + height);
System.out.println("학점: " + grade);
System.out.println("학생 여부: " + isStudent);
}
}
나이: 25
키: 175.5
학점: A
학생 여부: true
객체를 가리킴
크기가 동일함
기본형과 다르게 초기값이 null
- 클래스 (Class)
클래스로 만들어진 객체를 가리키는 변수.
예: String, 사용자 정의 클래스 등.코드_참조형변수 클래스 예시
String name = "Java"; // 문자열 객체를 가리킴 MyClass obj = new MyClass(); // 사용자가 만든 클래스의 객체를 가리킴
- 배열 (Array)
동일한 타입의 데이터를 저장하는 집합을 가리키는 변수.코드_참조형변수 배열 예시
int[] numbers = {1, 2, 3}; // 정수 배열 객체를 가리킴 String[] words = {"Hello", "World"}; // 문자열 배열을 가리킴
- 인터페이스 (Interface)
인터페이스 타입도 참조형 변수로 사용할 수 있어요.
실제 객체는 인터페이스를 구현한 클래스의 인스턴스입니다.코드_참조형변수 인터페이스 예시
List<String> list = new ArrayList<>(); // List 인터페이스를 구현한 ArrayList 객체
- 기타 참조형 (Wrapper 클래스, Enum 등)
Integer, Double 같은 기본형 데이터를 객체로 다룰 수 있는 Wrapper 클래스도 참조형.
열거형(Enum)도 참조형의 일종.코드_참조형변수 기타 참조형 예시
Integer num = 10; // 기본형 int의 Wrapper 클래스
public class Main {
public static void main(String[] args) {
// 참조형 변수: 문자열 객체
String greeting = "Hello, Java!";
System.out.println(greeting); // 문자열 출력
// 참조형 변수: 배열
int[] numbers = {10, 20, 30};
System.out.println(numbers[0]); // 배열의 첫 번째 값 출력
// 참조형 변수: 사용자 정의 클래스
Person person = new Person("Alice", 25);
System.out.println(person.name + ", " + person.age); // 객체의 값 출력
}
}
// 사용자 정의 클래스
class Person {
String name;
int age;
// 생성자
Person(String name, int age) {
this.name = name;
this.age = age;
}
}
Hello, Java!
10
Alice, 25