🎬 상상해봐
너는 RPG 게임을 만들고 있어.
이 게임에 "용사 캐릭터"를 만들고 싶어.
용사에게는 어떤 정보가 있을까?
- 이름
- 레벨
- 체력
- 공격하기
근데 그걸 변수로만 관리한다면?
String name = "철수";
int level = 5;
int hp = 100;
이거... 캐릭터가 100명 생기면? 👀 지옥이 펼쳐진다.
그래서 등장한 게 바로 클래스(class)!
클래스는 설계도, 객체는 실제 제품!
🏗️ 1. 클래스 만들기
public class Hero {
String name;
int level;
int hp;
void attack() {
System.out.println(name + "이(가) 공격했다!");
}
}
- String name : 이름
- int level, int hp : 정보(속성)
- attack() : 행동(기능)
🎯 이건 '용사(Hero)'를 만드는 설계도야!
🧞 2. 객체 만들기
public class Main {
public static void main(String[] args) {
Hero hero1 = new Hero(); // 객체 생성!
hero1.name = "철수";
hero1.level = 10;
hero1.hp = 150;
hero1.attack(); // 철수가 공격했다!
}
}
new Hero() → 진짜 용사 한 명 탄생!
hero1은 이제 살아 있는 하나의 객체야!
💡 여러 객체 만들기
Hero hero2 = new Hero();
hero2.name = "영희";
hero2.level = 8;
hero2.hp = 120;
hero2.attack(); // 영희가 공격했다!
- 같은 설계도(Hero)로 다양한 캐릭터를 만들 수 있어!
- 마치 붕어빵 틀 하나로 수백 개 찍는 느낌!
🧙♂️ 3. 객체지향이란?
Object-Oriented Programming (OOP) = 객체를 중심으로 세상을 바라보는 방식
사람, 괴물, 자동차, 은행 계좌 전부 객체
각각 속성과 행동을 가짐 (ex. 자동차: 속도, 주행 / 사람: 이름, 말하기)
🧩 클래스 구조 요약
public class 클래스이름 {
// 속성 (멤버 변수) 자료형 변수명;
// 기능 (메서드) 반환형 메서드이름() {
// 동작
}
}
🧠 정리표
용어의미비유
클래스 | 설계도 | 붕어빵 틀 |
객체 | 실제 제품 | 붕어빵 |
속성 | 정보 | 이름, 나이, 체력 |
메서드 | 행동 | 공격, 점프, 대화 |
🎮 실전 미션 – 자동차 만들기
public class Car {
String model;
int speed;
void drive() {
System.out.println(model + "가 " + speed + "km/h로 달립니다!");
}
}
public class Main {
public static void main(String[] args) {
Car myCar = new Car();
myCar.model = "람보르기니";
myCar.speed = 250;
myCar.drive(); // 람보르기니가 250km/h로 달립니다!
}
}
🌟 마무리 요약
지금 너는 설계도를 짜고, 실제 객체를 탄생시키는 기술자가 된 거야.
클래스는 세상을 표현하는 기본 단위야.
이제부턴 어떤 개념이든 직접 만들어서 구현할 수 있어.
다음 9단원에서는 **생성과정에 마법을 더해줄 Constructor(생성자)**를 배워보자!
객체가 태어나는 순간, 자동으로 정보를 입력할 수 있게 되는 자동화 주문이야.
이제 객체 탄생도 우아하게 만들 수 있어.
'IT > java 코딩 기초' 카테고리의 다른 글
🔟 상속 – 새로운 능력을 추가하자! 🦸♂️💥 (0) | 2025.04.14 |
---|---|
9️⃣ 생성자 – 객체 탄생의 순간을 다루는 마법! 🎩✨ (0) | 2025.04.14 |
7️⃣ 메서드 – 나만의 명령어를 만들자! ⚙️🧙♂️ (0) | 2025.04.14 |
6️⃣ 배열 – 정보를 줄 세워 다루는 기술! 📦📦📦 (0) | 2025.04.14 |
5️⃣ 반복문 – 기계에게 무한 반복을 시켜라! 🔁🤖 (1) | 2025.04.14 |