package ch05_this;
/*
* this
* → class안에 instance 멤버를 가리키는 참조 변수.
*/
public class Member {
private String id;
private String name;
private int age;
public Member() {
System.out.println("- Member() -");
id = "none";
name = "none";
age = 0;
}
public Member(String id) {
// Member() 값을 기존에 만들어진 생성자로 초기화 가능.
// → 생성자의 첫번째에서만 사용가능.
this("004","null",10);
System.out.println("- Member(String id) -");
this.id = id;
// this.name = "none";
// this.age =
}
public Member(String id, String name, int age) {
System.out.println("- Member(String _id, String _name, int _age) -");
this.id = id;
this.name = name;
this.age = age;
}
public String getId() { return id; }
public void setId(String id) {
this.id = id;
}
public String getName() { return name; }
public void setName(String name) {
if(name.length() <= 10) {
this.name = name;
} else {
System.out.println("이름은 10글자 까지만 가능합니다~");
}
}
public int getAge() { return age; }
public void setAge(int age) {
if(age >= 0 && age <= 130) {
this.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 + " 세");
}
}
package ch05_this;
public class MemberManager {
public static void main(String[] args) {
Member mb1 = new Member();
mb1.info();
System.out.println();
Member mb2 = new Member("002","홍길동",35);
mb2.info();
System.out.println();
Member mb3 = new Member("003");
mb3.info();
}
}