您的位置:首页 > 编程语言 > Java开发

新东方之java多态之老师也是人

2007-03-09 20:00 344 查看
【老乔】前两天给晚班学生将多态,想起时老师讲的一个笑话。说他们上大学的时候,有一个比他们大三届的学长留校当老师了,结果头一年就和高两届的学生中三个女生谈了恋爱,再一年又与高一届的两个女生谈,到他们这届又开始追求时老师的一个好朋友。时老师劝她同学说:“这样的人你怎么还答应他呢?”她同学说:“我也跟他说,咱们这样师生恋不好吧?他激动地说:老师也是人哪!就只好答应了。”于是“老师也是人”这句话成为一时之传。
    “老师也是人”这句话正好说出了对象的一种非常重要的特性,即一个具体的对象可以有多种身份。当他在一种场合下,以一种身份出现的时候,可以干某些事情;在另外一个场合,以另外一种身份出现的时候,就可以干另外一件事情。人是同一个人,但是换上不同的身份,就可以干不同的事情了。举例如下:
//普通人
class 人
{
 //男大当婚,都要谈恋爱
 public void 谈恋爱(人 mm){
  System.out.println("花前月下");
 }
};
//老师也是人啊!!!
class 老师 extends 人
{
 //首要职责是传道授业了
 public void 讲课(){
  System.out.println("为人师表");
 }
 //当然也要谈恋爱,并且谈法和普通人不同
 public void 谈恋爱(人 mm){
  System.out.println("道貌岸然");
 }
}
//看看到底怎么回事
class Test
{
 public static void main(String[] args)
 {
  //有人找来一个美女
  人 美女 = new 人();
  
  //介绍给武宇
  人 武宇 = new 老师(); //多态的声明
  /*武宇就开始谈恋爱。注意,刚开始美女还不知道武宇的职业的,但是已经注意到他谈恋爱与众不同了*/
  武宇.谈恋爱(美女); //输出:道貌岸然,而不是:花前月下//虚方法调用
  
  //介绍人告诉美女,武宇是个老师
  老师 武老师 = (老师)武宇; //强制造型成他的职业面目
  //这就是我们每天都遇见的武老师了
  武老师.讲课(); //输出:为人师表
 }
};
本人后注:武宇,武大师不是别人,正是本人现在的老师,新东方一博的金牌讲师
文章出处:http://blog.tom.com/blog/read.php?bloggerid=795966&blogid=45684
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java class 笑话 string 制造