2013년 6월 27일 목요일

(130627) 4일차 animal.java (다형성 테스트)

 - 다형성 : 다양한 형태의 성질
 : A extends B 이면 A가 B가 될 수 있다. 이것이 상속일수도 있지만 다형성이기도 하다.
 : A는 A클래스의 객체로도 생성이 되고, B클래스의 객체로도 생성이 된다.

 class 토끼 extends 포유류{}
 토끼 t = new 토끼();
 : 이 상황에서 토끼는 다형성을 가짐. (토끼, 포유류, Object)


 - 소스
public class animal {

int money = 20;

public int getMoney(){
return money;
}

public void setMoney(int money){
this.money = money;
}

public static void main(String[] args) {

}
}

class rabbit extends animal{

int girl = 8;

public void star(){
System.out.println(girl);
}

public void test(){
// rabbit 객체 생성
rabbit t = new rabbit();
// Object 객체 생성
Object obj = new rabbit();
// animal 객체 생성
animal p = new rabbit(); // 상속관계에 있으므로 넣을 수 있음 (다형성)

// 자바는 다중 상속을 지원하지 않고 단일 상속만 지원한다.
}

 public void test2(){
 Object [] arr = new Object[2];
 arr[0] = new rabbit();
 arr[1] = new animal();
 }
}