package ch03_getter_setter;
/*
* getter 메서드
* → class 외부에서 생성된 객체의 멤버필드를 사용하는 용도의 메서드.
*
* setter 메서드
* → class 외부에서 생성된 객체의 멤버필드를 설정 or 수정하는 용도의 메서드.
*
* 멤버 필드 = private
* 메서드 = public
*/
class Member {
private String id;
private String name;
private int age;
public String getId() { return id; }
public void setId(String _id) { id = _id; }
public String getName() { return name; }
public void setName(String _name) {
if(_name.length() <= 10) {
name = _name;
} else {
System.out.println("이름은 10글자까지만 가능합니다.");
}
}
public int getage() { return age; }
public void setage(int _age) {
if(_age >= 0 && _age <= 130) {
age = _age;
} else {
System.out.println("나이는 0~130 사이만 가능합니다.");
}
}
public void info() {
System.out.println("--- 회원정보 ---");
System.out.println("ID : " + id);
System.out.println("이름 : " + name);
System.out.println("나이 : " + age + "세");
}
}
public class ExGetterSetter {
public static void main(String[] args) {
Member manA = new Member();
// manA.id = "001";
// manA.name = "manA";
// manA.age = 20;
manA.setId("001");
//manA.setName("afdsfsfsdffs");
manA.setName("manA");
//manA.setage(-2);
manA.setage(24);
manA.info();
System.out.println();
System.out.println("회원 ID : " + manA.getId());
System.out.println("회원 이름 : " + manA.getName());
System.out.println("회원 나이 : " + manA.getage() + "세");
}
}
package ch03_getter_setter;
/*
* Book class를 정의하고, BookManager class에서 테스트하세요.
* → 책제목, 지은이, 진열위치, 가격의 관리가 가능합니다.
* → 멤버필드 값을 설정, 사용하는 getter, setter 메서드를 정의하세요.
* > 지은이 : 2~10 글자 가능.
* 진열위치 : A, B, C만 가능.
* 가격 : +(plus)만 가능.
*/
class Book {
private String title;
private String author;
private char area;
private int price;
public String gettitle() { return title; }
public void settitle(String _title) { title =_title; }
public String getauthor() { return author; }
public void setauthor(String _person) {
if(_person.length() < 11 && _person.length() > 1) {
author = _person;
} else {
System.out.println("지은이는 2~10글자만 가능합니다.");
}
}
public char getarea() { return area; }
public void setarea( char _where ) {
if(_where == 'A' | _where == 'B' | area == 'C') {
area = _where;
} else {
System.out.println("진열위치는 A, B, C만 가능합니다.");
}
}
public int getprice() { return price; }
public void setprice(int _price) {
if(_price >= 0 ) {
price = _price;
} else {
System.out.println("가격은 양수만 가능합니다.");
}
}
public void info() {
System.out.println("--- 책 정보 ---");
System.out.println("제목 : " + title);
System.out.println("지은이 : " + author);
System.out.println("진열위치 : " + area);
System.out.println("가격 : " + price + "원");
}
}
package ch03_getter_setter;
public class BookManager {
public static void main(String[] args) {
Book bk = new Book();
bk.settitle("개미");
bk.setauthor("홍길동");
bk.setauthor("fdsfdsfdsdfsfds");
bk.setarea('A');
bk.setarea('D');
bk.setprice(28000);
bk.setprice(-12000);
bk.info();
System.out.println();
System.out.println("책 제목 : " + bk.gettitle());
System.out.println("책 지은이 : " + bk.getauthor());
System.out.println("책 진열위치 : " + bk.getarea());
System.out.println("책 가격 : " + bk.getprice() + "원");
}
}