zoukankan      html  css  js  c++  java
  • 继承与多态

            JAVA的翻译者我是历来都不敢恭维这些人,为了突出牛逼哄哄的文采给广大爱好JAVA的人,特别是初学者增加了不少的麻烦。好吧好吧,谁叫咱的English学的渣。今天说说继承,(咳咳......)I  don't  want   to  use  this  word  !!!!继承其实跟真正的继承一毛钱关系都没有。JAVA中的继承,其实说的并不是老爸跟儿子的关系(of course也不是你妈跟你的关系)这种继承,其实说的是两个类之间的一种扩展或者说是升级。打个比方,俺们是四川人,就拿火锅来说好了,其实火锅好不好吃关键在底料,这个就相当于是继承中父类的角色,但是呢,这个时候有个食客来了,他说,你家的火锅好吃是好吃,就是不够辣请给我加辣一点。好的,现在问题来了,你是不是需要重新去给这个客户去炒一锅底料呢,(why not ? 如果这样,请出门左拐)当然,这样做肯定是费事费力,最简便的方法就是,在原有的底料基础上加上这个食客需要的口味,比如多添加辣椒。如此这份多添加了辣椒的底料就是没加辣椒底料的一种扩展或升级。在继承中也是这样,只不过是将被继承的类的某些功能或者方法进行了一定的升级得到一个新的类。用这个新的类就可以做原有的类所达不到的事。这就是继承的意义。但是说起来父类子类什么的其实本质上并不是父子的关系,也不能用现实中的父子去描述这种关系,不然真的容易走火入魔。当然在JAVA中,继承只能是单一的,一个类只能继承一个其它的类。老实说,既然是扩展为什么不能同时扩展多个类。。。。。。我就是想这个火锅在原有的口味上同时具有更麻更辣也同时有印度咖喱和肯德基香辣鸡翅的味道怎么就不可以。。。。。

           OK,也简单说说多态,如其名曰。。。。就是多种状态,一个东西用英文叫Dog用中文叫狗用日文叫(我先去查一查)但是说的都是同一个东西,JAVA中也一样,一个子类的属性,即可以用该类的引用去访问,也可以用父类的引用去访问(前提是父类也同时拥有这个属性),子类用父类引用访问时不会再具备自身特有的属性,这个过程叫向上转型。然而,当我想调用这个子类特有的属性时,就需要将该类型强制转回到自己的引用类型,这样就可以调用自己特有的方法和属性了。这个过程叫向下转型。当然这并不是多态设计出来的初衷。多态平时使用多是用来面向接口编程,意思是当你调用我的借口你就可以实现特定的功能,但是如何实现的使用者并不需要知道,当你调用接口时,你所具体使用的是这个接口的实现类所完成的,但是你只需要调用接口就行了。

         简单理解一下继承与多态,这个东西还是的在实践中去体会感悟,说出来总显得空洞抽象。

  • 相关阅读:
    Java反射机制之初见端倪
    DB2日常维护之优化 【优化】
    db2pd 分析锁等待 步骤 【监控】
    DB2 UDF
    db2中会导致表处于reorg pending状态的alter语句
    利用Explain分析SQL【监控】
    Hibernate之Hello World篇
    规划下时间 13.0413.08
    神经网络
    ML EX3
  • 原文地址:https://www.cnblogs.com/sandwichforworld/p/5496243.html
Copyright © 2011-2022 走看看