☕Java
Java 객체지향 프로그래밍으로 책 정보 관리 시스템 구현하기
itstory(Booho)
2024. 12. 10. 17:37
728x90
이번 포스트에서는 자바 객체지향 프로그래밍을 이용하여 간단한 책 정보 관리 시스템을 구현해 보겠습니다. Author 클래스와 Book 클래스를 정의하고, 이를 통해 다양한 책과 저자 정보를 관리하는 프로그램을 만들어 볼 것입니다.
📝 목표:
우리는 책과 저자(Author)의 정보를 저장하는 프로그램을 만들어 볼 거예요
✅ 1. 저자 (Author) 클래스 만들기
✔ 저자의 이름을 저장하는 클래스를 만들어 보겠습니다.
public class Author {
String name; // 저자의 이름
void print() {
System.out.println("저자 이름: " + name);
}
}
📌 설명:
- name 변수에 저자의 이름을 저장합니다.
- print() 메소드에서 저자의 이름을 출력합니다.

✅ 2. 책 (Book) 클래스 만들기
✔ 책의 정보를 저장하는 클래스를 만들어 보겠습니다.
public class Book {
String title; // 책 제목
String description; // 책 설명
int price; // 가격
Author author; // 저자 정보 (Author 클래스 사용)
void print() {
System.out.println("책 제목: " + title);
System.out.println("설명: " + description);
System.out.println("가격: " + price + "원");
author.print(); // 저자의 정보 출력
}
}
📌 설명:
- title: 책 제목 저장
- description: 책에 대한 간단한 설명
- price: 가격 저장
- author: 저자 정보 저장 (Author 클래스를 활용)
- print(): 책의 모든 정보를 출력
✅ 3. 실행 클래스 만들기 (Main 메소드)
✔ 책과 저자를 직접 만들어서 실행해 볼까요?
public class Yes24 {
public static void main(String[] args) {
// 1. 책 객체 생성
Book b1 = new Book();
b1.title = "자바 입문";
b1.description = "자바를 처음 배우는 사람을 위한 책";
b1.price = 20000;
// 2. 저자 객체 생성
b1.author = new Author();
b1.author.name = "김자바";
// 3. 책 정보 출력
b1.print();
}
}

📌 실행 결과 (출력):
책 제목: 자바 입문
설명: 자바를 처음 배우는 사람을 위한 책
가격: 20000원
저자 이름: 김자바

🎯 핵심 요약
1️⃣ 클래스 만들기
- Author 클래스: 저자의 이름을 저장
- Book 클래스: 책 제목, 설명, 가격, 저자 정보를 저장
2️⃣ 객체 만들기
- new 키워드를 사용하여 Book과 Author 객체를 생성
3️⃣ 출력하기
- print() 메소드를 호출하여 책과 저자의 정보를 화면에 출력
코드 작동 원리
- 객체 생성: new 연산자를 사용하여 Author 객체와 Book 객체를 생성합니다.
- 멤버 변수 초기화: 생성된 객체의 멤버 변수에 값을 할당합니다.
- 객체 연결: Book 객체의 author 멤버 변수에 Author 객체를 할당하여 책과 저자를 연결합니다.
- 메소드 호출: print() 메소드를 호출하여 객체의 정보를 출력합니다.
객체지향 프로그래밍 개념 적용
- 클래스: Author와 Book은 실제 세계의 개념(저자, 책)을 추상화한 클래스입니다.
- 객체: new 연산자로 생성된 Author 객체와 Book 객체는 클래스의 인스턴스입니다.
- 멤버 변수: 각 객체의 고유한 속성을 나타냅니다.
- 메소드: 객체가 수행할 수 있는 동작을 정의합니다.
- 캡슐화: 클래스 내부의 데이터를 보호하고, 외부에서의 접근을 제한합니다.
- 연관 관계: Book 클래스의 author 멤버 변수를 통해 Author 클래스와 연관 관계를 맺었습니다.
728x90
반응형