Has~a
* 객체는 항상 독립적으로 만들어야한다!
Data Class
public class Name {
private String name;
public Name() {
}
public Name(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
Processing Class
public class Man {
private Name name; // Has ~ a 관계 => Man이란 클래스가 Name이란 클래스 객체를 가르킬 참조변수를 필드로 선언
private int age;
public Man() {
name = new Name(); // Name 클래스 객체 생성
age = 0;
}
public void setName(String name) {
this.name.setName(name); // Man 클래스의 field인 name 클래스 메소드 접근
}
public void setAge(int age) {
this.age = age;
}
public String getName(){
return name.getName();
}
public int getAge(){
return age;
}
public static void main(String[] args) {
Man man = new Man();
man.setName("superman");
man.setAge(10000);
System.out.println(man.getName());
System.out.print(man.getAge());
}
}