Java는 단일상속만을 허용한다.
class TvDVD extends Tv, DVD {
}
*** 따라서 비중이 높은 클래스 하나만 상속관계로, 나머지는 포함관계로 나타내야 한다 ***
class Tv{
boolean power;
int channel;
void power() { power =! power; }
void channelUp() { ++ channel; }
void channelDown() { -- channel; }
}
class DVD {
boolean power;
void power() { power =! power; }
void play() {
void stop() {
void rew() {
void ff() {
class TvDVD extends Tv{
DVD dvd = new DVD();
void play(){
dvd.play();
}
void stop(){
dvd.stop();
}
void rew(){
dvd.rew();
}
void ff(){
dvd.ff();
}
}
이렇게 속성이 조금 더 비슷한 클래스를 상속,
나머지 클래스의 메서드를 호출해서 사용하면
다중 상속의 효과를 낼 수 있다!!
Object클래스는 모든 클래스의 조상이다.
- 부모가 없는 클래스는 자동적으로 Object클래스를 상속받게 된다.
(컴파일러가 자동으로 추가해준다)
--> Object클래스에 정의된 11개의 메서드를 상속받는다.
( toString(), equals(Object obj), hashCode(),......)