1. 책에 대한 클래스를 만들어준다 (클래스 = 설계도면)
ex) 책에 대한 클래스 (책 설계)
생각해보자.
책이라는 객체는 제목이 있을 수도 있고, 작가가 있을 수도 있고, 년도와 페이지 수를 가질 수 있다
↓
String title; // 책 제목
String author; // 책 작가
int publishYear; // 책 만든 년도
int totalPage; // 총 페이지 수
Book이라는 클래스 이름으로 설계를 했다
public class Book {
String title;
String author;
int publishYear;
int totalPage;
}
* 클래스는 대문자로 시작하는 것이 좋다
package exercise2;
public class Book {
String title;
String author;
int publishYear;
int totalPage;
}// end of class
2. 설계 도면을 이제 실제로 만들어 보자 (클래스 인스턴스화) - 스택, 힙 메모리에 올라감
Book book1 = new Book(); // 객체 생성
Book book2 = new Book(); // 객체 생성
대입 연산자라서 new Book 을 먼저 찾아감 (미리 만들어둔)
Book 박스만 만들어둔 상태인데 생성자를 만들어줌으로서 Book 안에 있는 클래스(객체)들이 heap메모리로 올라감
클래스를 인스턴스화 후 값을 넣지 않고 sysout(출력하면 주소값만 나옴)
3. 생성된 heap 메모리에 속성값 넣기
기존에 생성해둔 book 설계
String title;
String author;
int publishYear;
int totalPage;
book1.title = "오늘은 금요일";
book1.author = "홍길동";
book1.publishYear = 2024;
book1.totalPage = 365;
4. 속성값 출력하기
System.out.prinln(book1.title);
System.out.prinln(book1.author);
System.out.prinln(book1.publishYear);
System.out.prinln(book1.totalPage);
package exercise2;
public class BookTest {
public static void main(String[] args) {
// 인스턴스화
Book book1 = new Book();
Book book2 = new Book();
book1.title = "오늘은 금요일";
book1.author = "홍길동";
book1.publishYear = 2024;
book1.totalPage = 365;
System.out.println(book1.title);
System.out.println(book1.author);
System.out.println(book1.publishYear);
System.out.println(book1.totalPage);
}// end of main
}// end of class
'복습 및 이해' 카테고리의 다른 글
메서드 ( method )와 변수( 지역 변수, 멤버 변수 ) (1) | 2024.04.19 |
---|