java中继承的好处是啥,在组合和继承中该如何取舍?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中继承的好处是啥,在组合和继承中该如何取舍?相关的知识,希望对你有一定的参考价值。

1,继承提高了代码的重复利用性;

2,继承是面向对象的,一类事物可以独立存在,解藕了类与类之间的斗联系。
3,继承更利于程序的设计。
5,在组合中,一定要把同一类事物放在一起,和现实生活中一样,每一类事物都是有自己的共性和自己的特性,按毛主席的矛盾论说是:矛盾的普遍性与特殊性,普遍性就是继承来的。
6,在写代码之前,分析和设计是关键的一步,这一步解决的就是哪些类是同类的,哪些东西是公共的。
参考技术A 参考如下知乎的回答:
合 关 系
优点:不破坏封装,整体类与局部类之间松耦合,彼此相对独立
优点:具有较好的可扩展性
优点:支持动态组合。在运行时,整体对象可以选择不同类型的局部对象
优点:整体类可以对局部类进行包装,封装局部类的接口,提供新的接口

缺点:整体类不能自动获得和局部类同样的接口

缺点:创建整体类的对象时,需要创建所有局部类的对象

继 承 关 系

优点:创建子类的对象时,无须创建父类的对象
优点:子类能自动继承父类的接口

缺点:子类不能改变父类的接口

缺点:破坏封装,子类与父类之间紧密耦合,子类依赖于父类的实现,子类缺乏独立性

缺点:不支持动态继承。在运行时,子类无法选择不同的父类

作者:陈昱全
链接:https://www.zhihu.com/question/20128211/answer/56632435
来源:知乎
著作权归作者所有,转载请联系作者获得授权。
参考技术B 首先继承,如果多个类用的方法(变量)是一样的,在类中每次多要赋值这样的方法很麻烦,代码的利用率差.
这些公用的方法(变量)可以提前写好在A类(父类)中,然后我们要用的类B类(子类)继承,然后再扩展不同的功能点(方法);
但是组合是什么意思?一般继承是和抽象类或者是接口并提的;你说的组合是组合模式还是什么.
参考技术C 首先继承,如果多个类用的方法(变量)是一样的,在类中每次多要赋值这样的方法很麻烦,代码的利用率差.
这些公用的方法(变量)可以提前写好在A类(父类)中,然后我们要用的类B类(子类)继承,然后再扩展不同的功能点(方法);
但是组合是什么意思?一般继承是和抽象类或者是接口并提的;.
参考技术D 一般是看代码量吧,代码量多,就用继承,把代码写到多个文件里,代代码量少,就用组合,把代码写到一个文件里。

java特性之继承

继承这一特性是面向对象的重要概念,好处就是提高代码的复用,节约开发时间。

在java中继承是指在父类的基础上扩展功能,继承中分为子类和父类。

类有两种重要成员:成员变量和方法。

java中子类通过关键字extends可以获得父类的成员变量和方法。子类的成员中可以有自己声明定义的变量,也有从父类继承的。

java中继承的特点:

1.单根继承,向上只有一个节点,所有的类继承的根节点都是Object类。

2.java不支持多继承。一个类不能同时继承多个类*(可以实现多喝接口)。

3.子类重写父类的方法时,访问权限不能低于父类的。

4.类重写了父类的方法,运行时系统调用子类重写的方法实现;未重写,子类对象调用父类的方法实现.如果重写之后要使用父类的方法,使用关键字super。

 

以上是关于java中继承的好处是啥,在组合和继承中该如何取舍?的主要内容,如果未能解决你的问题,请参考以下文章

Typescript中继承的父类中的参数是啥?

JavaScript中继承的实现方式

JavaScript中继承的实现方式

js中继承的实现,原型链的知识点归纳,借用构造函数,组合继承(伪经典继承)

C++和Java中继承的个人感觉

java中继承的特点