728x90
클래스란?
클래스는 **속성과 동작을 정의한 틀(설계도)**이며,
이를 바탕으로 **객체(Object)**를 생성할 수 있습니다.
예시 비유:
- 클래스: 쿠키 틀
- 객체: 틀로 찍어낸 실제 쿠키
클래스 구성 요소
구성 요소 | 설명 | 예시 |
필드 | 객체의 속성 (변수) | String name; int age; |
메서드 | 객체의 행동 (함수) | void bark() {} |
생성자 | 객체를 만들 때 호출되는 특수 메서드 | public Dog() {} |
클래스 예제: Dog 클래스 만들기
public class Dog {
// 필드 (속성)
String name;
int age;
// 메서드 (행동)
void bark() {
System.out.println(name + "가 멍멍 짖습니다!");
}
}
객체 생성과 사용
public class Main {
public static void main(String[] args) {
Dog myDog = new Dog(); // Dog 클래스의 객체 생성
myDog.name = "초코";
myDog.age = 3;
myDog.bark(); // 출력: 초코가 멍멍 짖습니다!
}
}
클래스 이름 규칙
- 대문자로 시작
- 의미 있는 명사 사용 (Person, Car, Student)
- CamelCase 표기법 사용 권장
클래스 사용의 장점
장점 | 설명 |
코드 재사용성 ↑ | 같은 클래스로 여러 객체 생성 가능 |
유지보수 용이 | 기능과 데이터가 구조적으로 정리됨 |
현실 세계 모델링 가능 | 사람, 차량, 제품 등 객체 중심으로 설계 가능 |
실습 아이디어
- Student 클래스 만들기 → 이름, 나이, 점수 필드 + 소개 메서드
- Calculator 클래스 만들기 → 더하기, 빼기 기능 메서드
- Book 클래스 만들기 → 책 정보 저장 + 출력 기능
마무리 요약
구분 | 설명 |
클래스 | 객체를 만들기 위한 틀 |
객체 | 클래스 기반으로 만든 실체 |
필드 | 객체의 속성 |
메서드 | 객체의 기능/행동 |
생성자 | 객체 생성 시 호출되는 특수 메서드 |
LIST
'JAVA > 객체지향 프로그래밍 (OOP) 기초' 카테고리의 다른 글
extends 키워드로 상속하기 (0) | 2025.04.13 |
---|---|
인스턴스 메서드 vs 클래스(static) 메서드 (0) | 2025.04.13 |
생성자의 개념 및 오버로딩 (0) | 2025.04.12 |
this 키워드 (0) | 2025.04.12 |
객체 생성과 메서드 호출 (0) | 2025.04.12 |