唉。。这个题目真抽象,我也以厕所来说说自己的看法吧
传说以前没有厕所,大家都随地又随意,这苦恼了上帝,于是他构想着发明一个东西。
abstract class 厕所 {
String name=“厕所” //这东西就叫厕所了
String 地方;
厕所(String 地方){ //注意,这虽然是构造方法,但实际不能被直接new 厕所()来调用,只能是他的子类来调用
厕所.地方=地方
}
abstract 气味 想到厕所(); //定义抽象方法:想到厕所,返回"气味"
}
----------------------------------------------------------
厕所就这样发明了,不过还是个概念,需要有人以这个概念去做设计图再修建
于是有了
class 公厕设计图 extends 厕所
String name 厕所名字
公厕设计图(String 地方){
super(地方); //调父类构造
}
男厕所(String 地方,int 面积大小) {
}
女厕所(String 地方,int 面积大小) {
}
@override
public 气味 想到厕所() { //重写
return "臭味" ;
}
public 收费 (){
....
}
}
--------------------------------------
设计图有了,现在创建实例
new 公厕设计图(北京)
//于是终于有了个匿名厕所
---------------------------------------------
后来,厕所可以评星了,五星级厕所,政府规定必须没有臭味,还得有马桶,还得有音乐,于是政府出台了一个接口,所有实现此接口的都 是五星级厕所
interface 五星厕所(){
马桶 建马桶(int 个数)
音乐 放音乐()
气味 想到厕所()
}
于是,上面的公厕要升级五星于是需要
class 公厕设计图 extends 厕所 implements 五星级厕所{
....
马桶 建马桶(int 个数) {
新建 个数 个马桶
}
音乐 放音乐() {
放XXX歌;
}
气味 想到厕所(){
return 返回香味
}
}
--------------------------------
好设计图改了,来按着他建立个厕所
厕所1 =new 公厕设计图(北京) |