클래스
클래스는 일종의 설계도입니다. 자동차 공장에서 자동차를 만들기 위해 먼저 설계도를 그리듯, 클래스는 객체를 만들기 위한 틀입니다.
class Car {
String brand;
int speed;
void drive() {
System.out.println(brand + " is driving at " + speed + "km/h");
}
}
여기서 Car 클래스로 선언되었으며, 자동차 설계도에 해당합니다.
"브랜드"와 "속도"라는 속성, "drive()"라는 동작이 정의되어 있습니다. 아직 아무것도 만들어지지 않았습니다.
이건 마치 설계도일 뿐입니다.
객체
객체는 클래스를 기반으로 실제로 만들어낸 구체적인 존재입니다. 설계도를 바탕으로 실제 자동차를 만든 것처럼 객체도 클래스(설계도)를 통해 여러 자동차를 만들어 낼 수 있습니다.
public class BasicOOP {
public static void main(String[] args) {
Car myCar1 = new Car();
myCar1.brand = "Hyndai";
myCar1.speed = 120;
Car myCar2 = new Car();
myCar2.brand = "KIA";
myCar2.speed = 100;
Car myCar3 = new Car();
myCar3.brand = "Jeep";
myCar3.speed = 140;
myCar1.drive();
myCar2.drive();
myCar3.drive();
}
}
여기서 myCar1, myCar2, myCar3 은 Car 클래스를 기반으로 만들어진 객체입니다.
아래 출력 결과를 확인해보면 각각 다른 속성을 갖고 있는걸 확인할 수 있습니다. 이를 통해 객체는 클래스를 기반으로 만들어낸 실제 구현체인것을 알수있습니다.
- 출력 결과 -
Hyndai is driving at 120km/h
KIA is driving at 100km/h
Jeep is driving at 140km/h
인스턴스
인스턴스란 객체와 거의 같은 말이지만, 조금 더 관계에 집중된 말입니다.
myCar1, myCar2, myCar3는 Car클래스에 의해 만들어졌기에 Car 클래스의 인스턴스(Instance)라고 부릅니다.
"myCar1은 Car 클래스의 인스턴스이다."
→ 어떤 클래스에 의해 만들어졌는지 '관계'를 나타내는 말입니다.
비교 정리

- 클래스: "이런 속성과 기능을 가진 자동차를 만들 거야!" → 설계도
- 객체: 설계도로 만들어낸 실체 → Hyundai, KIA, Jeep 자동차
- 인스턴스: "이건 Car 클래스에서 만들어졌어"라는 관계 표현
읽어주셔서 감사합니다 😊

'프로그래밍 언어 > Java' 카테고리의 다른 글
[Java] 11. 클래스 변수와 인스턴스 변수 (0) | 2025.04.02 |
---|---|
[Java] 10. 캡슐화란? (0) | 2025.03.27 |
[Java] 08. 객체 지향과 절차 지향의 차이 (0) | 2024.05.07 |
[Java] 07. 배열과 다차원 배열 (0) | 2024.03.27 |
[Java] 06. 반복문의 제어 (break, continue, label) (0) | 2024.03.27 |