黑马程序员技术交流社区

标题: 从哲学角度阐述子类与父类之间的关系 [打印本页]

作者: liurongzhi1991    时间: 2015-4-27 21:12
标题: 从哲学角度阐述子类与父类之间的关系
本帖最后由 liurongzhi1991 于 2015-4-27 21:14 编辑

                                  从哲学角度阐述子类与父类之间的关系
         继承让类与类之间产生了关系,那么子类的父类的关系到底是什么呢,是一种子类属于父类吗,接下来从两个方面阐述:
       一.从范围角度来说:
        子类为什么要继承父类,因为父类中有子类所需要的特性
而为了提高代码的简洁性。在定义子类属性的时候,不必把所有子类的属性都一一定义出来,因为其具有共性,所以提取这些共性的代码,封装成父类,子类继承之后,便拥有了,这些子类所共同拥有的属性,也提高了代码的复用性。
      在子类继承了父类之后,其还可以定义一些这个子类所特有的属性和行为,这个特有的属性行为是属于这个子类的,区别于其他子类的属性行为,不可以从所有的子类中提取出的,然而从从父类到子类是一个不断具象化的过程,如果说父类是抽象的,那么子类就是在不断的具象。父类只是定义了这一类事物的共有属性,基本的框架和基本的行为,如:若animal是一个父类,那么其子类不仅具有了父类的属性和行为,如:行为有:跑,睡觉等,属性:眼睛,耳朵,四肢等,而继承了animal的子类,他还有自己的特有属性和行为,如 dog,它是animal的一个子类,他不仅拥有animal中的行为:跑,睡觉,还有自己的特有行为:如:汪汪叫,看家。以及特有属性:皮毛,爪子等(而animal中的其他子类如鱼。就不会拥有狗的属性)
      从父类到衍生出特有属性和行为的子类,是一个不断具象的过程,
在这个具象的过程中,其具有了特有的属性行为,但是这也是一种枷锁,或者成为局限,属性和行为是对一类事物的描述,属性越多,描述的月具体,其所包括的范围也会越小,animal是包含了所有动物,如:猫,鱼,鸟,虫等,其属性是对所有动物的共同属性的抽取,而dog由于是继承了animal,他不仅具有animal中的基本属性,还有特有属性,它对dog这一类事物要比animal描述要详细的多,这就是越多的属性和行为对其的局限性越大,其范围也就越小。所以在范围上,父类是包含子类的。
       二.从行为属性角度来说:
      所谓行为,即是功能,上述中,animal中只有跑,睡觉的行为,而在dog这个类中不仅包含了跑和睡觉的行为,还有汪汪叫,看家等行为,这种行为是dog类所特有的,是animal在不断具象过程中产生的,所以dog的类中所包含的行为属性,包括了animal中的行为属性和自己特有的行为属性,或者说是功能要远远多于animal,这也就是说,在功能上,子类的作用是包括父类的。
综上:单纯的说父类包含子类的观点片面的。



作者: 小鹏_sJQBO    时间: 2015-4-27 21:15
牛比!!!!!!!!
作者: godrick007    时间: 2015-4-27 21:15
good for you
作者: 怪学究    时间: 2015-4-27 21:15
看不懂,。
作者: 雪风飞花    时间: 2015-4-27 21:15
点个赞
作者: li514620797    时间: 2015-4-27 21:16
不错赞一个
作者: 木风雪林    时间: 2015-4-27 21:19
小志志,牛,我看好你!赞一个!
作者: msyx9871453    时间: 2015-4-27 21:19
0416 :handshake雄起!Cloud 来顶!
作者: 长风绕旗    时间: 2015-4-27 21:21
1号部队抵达,奉命前来支援。
作者: lshaizj    时间: 2015-4-27 21:22
观点新意哦
作者: liyanghml    时间: 2015-4-27 21:26
不错不错,继续努力!!!!
作者: 崔小可    时间: 2015-4-27 21:59
不错不错,继续努力!观点新颖!!
作者: 段立志    时间: 2015-4-27 22:02
顶一个:)
作者: 爆炸头    时间: 2015-4-27 22:34
学继承还得研究哲学 ~~~~~~~~~~~~~~~~~~~技多不压身那~
作者: mxdeheima    时间: 2015-4-27 22:40
学习学习




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2