📌 참고링크 : Model
public class BookDTO { // DTO --> 어떻게 설계하는 것이 잘 설계하는 것인가?
// 1. 모든 멤버를 정보은닉 시킨다. (private)
// 데이터를 넣고 빼야하니 접근제한자를 넣어줘야함 --> 단, 상태정보는 중요하기에 정보은닉이 필요 (private) **중요**
private String title;
private int price;
private String name;
private int page;
// 2. 생략된 메서드(디폴트 생성자 메서드)를 명시적으로 만든다.
// 객체를 생성해준다 (내부적으로 이루어진다.)
// 마우스 우클릭 -> 생성(Generate) -> 생성자(Constructor) -> 선택안함(Select None) 클릭
public BookDTO() {
}
// 3. 생성자 메서드를 오버로딩하여 객체 초기화 하기
// 마우스 우클릭 -> 생성(Generate) -> 생성자(Constructor) -> 필요한 파일 전체 선택 -> OK
public PersonVO(String title, int price, String name, int page) {
this.title=title;
this.price=price;
this.name=name;
this.page=page;
}
// 4. setter method(값 넣기) / getter method(값 얻어오기) 만들기
// setter, getter 를 자동으로 만드는 방법
// 마우스 우클릭 -> 생성(Generate) -> getter and setter -> 필요한 파일 전체 선택 -> OK
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public int getPrice() {
return price;
}
public void setPrice(int price) {
this.price = price;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getPage() {
return page;
}
public void setPage(int page) {
this.page = page;
}
// 5. toString() 메서드 만들기(값 출력용)
// 마우스 우클릭 -> 생성(Generate) -> toString -> 필요한 파일 전체 선택 -> OK
public String toString() {
return title+"\t"+price+"\t"+name+"\t"+page;
}
}
📌 참고링크 : ↘︎_생성자 메서드란?
public static void main(String[] args) {
BookDTO b = new BookDTO(); // new(객체 생성 연산자), BookDTO(생성자 메서드)
}
BookDTO b; = 객체변수
b = new BookDTO(); = 인스턴스변수
📌 참고링크 : ↘︎_dot연산자
public static void main(String[] args) {
BookDTO b = new BookDTO();
b.setTitle("자바");
b.setPrice(30000);
b.setName("홍길동");
b.setPage(300);
}
📌 참고링크 : 매개변수 전달기법
public static void main(String[] args) {
BookDTO b = new BookDTO();
b.setTitle("자바");
b.setPrice(30000);
b.setName("홍길동");
b.setPage(300);
bookPrint(b); // 번지전달기법(Call By Reference)
}
public static void bookPrint(BookDTO b) {
System.out.println(b.getTitle()); // 자바
System.out.println(b.getPrice()); // 30000
System.out.println(b.getName()); // 홍길동
System.out.println(b.getPage()); // 300
}
}