java 中的继承的 优点和缺点 主要是缺点

java 中的 继承的 优点和缺点 主要是缺点
一般说继承的优点的比较多 但是说缺点的就比较少
所以麻烦大家说下继承的缺点 当然优点也可以说下
感谢各位大侠了

java 中的继承的 优点和缺点如下:
优点:1.可以使用父类的所有非私有方法;而且单继承可由接口来弥补。
2.可以继承父类中定义的成员方法以及成员变量,使得子类可以减少代码的书写。还可以重写父类的方法以增加子类的功能。
缺点:1.耦合性太大
2.就是破坏了类的封装性,其实继承一般多用于抽象方法的继承和接口的实现
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-07-28
缺点是灵活性吧...effective java有专门章节(貌似是"复合优先于继承")详细的讲解了继承了局限性..~

以下内容来自互联网:

组合

通过创建一个由其他对象组合的对象来获得新功能的重用方法
新功能的获得是通过调用组合对象的功能实现的
有时又叫聚合
例如:
一个对象拥有或者对另外一个对象负责并且两个对象有相同的生命周期。(GOF)
一个对象包含另一个对象集合
被包含对象对其他对象是不可见的并且只能从包含它的对象中访问的特殊组合形式
组合的优缺点

优点
被包含对象通过包含他们的类来访问
黑盒重用,因为被包含对象的内部细节是不可见的
很好的封装
每个类专注于一个任务
通过获得和被包含对象的类型相同的对象引用,可以在运行时动态定义组合的方式
缺点
结果系统可能会包含更多的对象
为了使组合时可以使用不同的对象,必须小心的定义接口
继承

通过扩展已实现的对象来获得新功能的重用方法
基类有用通用的属性和方法
子类提供更多的属性和方法来扩展基类
继承的优缺点

优点
新的实现很容易,因为大部分是继承而来的
很容易修改和扩展已有的实现
缺点
打破了封装,因为基类向子类暴露了实现细节
白盒重用,因为基类的内部细节通常对子类是可见的
当父类的实现改变时可能要相应的对子类做出改变
不能在运行时改变由父类继承来的实现
由此可见,组合比继承具有更大的灵活性和更稳定的结构,一般情况下应该优先考虑组合。只有当下列条件满足时才考虑使用继承:

子类是一种特殊的类型,而不只是父类的一个角色
子类的实例不需要变成另一个类的对象
子类扩展,而不是覆盖或者使父类的功能失效

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/zjliu1984/archive/2009/06/26/4299657.aspx

参考资料:http://blog.csdn.net/zjliu1984/archive/2009/06/26/4299657.aspx

本回答被提问者采纳

java 中的继承的 优点和缺点 主要是缺点
优点:1.可以使用父类的所有非私有方法;而且单继承可由接口来弥补。2.可以继承父类中定义的成员方法以及成员变量,使得子类可以减少代码的书写。还可以重写父类的方法以增加子类的功能。缺点:1.耦合性太大 2.就是破坏了类的封装性,其实继承一般多用于抽象方法的继承和接口的实现 ...

java继承的优点
继承的优缺点:优点 新的实现很容易,因为大部分是继承而来的 很容易修改和扩展已有的实现 缺点 打破了封装,因为基类向子类暴露了实现细节 白盒重用,因为基类的内部细节通常对子类是可见的 当父类的实现改变时可能要相应的对子类做出改变 不能在运行时改变由父类继承来的实现 只有当下列条件满足时才考...

javaextends问题
1. 代码复用:通过继承,子类可以复用父类的代码,避免了重复编写相同的代码。2. 多态性:在继承体系中,不同的对象可以对同一消息产生不同的行为。3. 扩展性:当需要修改或扩展现有类的功能时,可以通过添加新的方法或属性,而不是修改原有的类。如何使用extends关键字 在Java中,使用`extends`关键字...

java继承的优点是什么?
2、继承简化了人们对事物的认识和描述,能清晰体现相关类间的层次结构关系;继承提供了软件复用功能。这种做法能减小代码和数据的冗余度,大大增加程序的重用性;提供多重继承机制。出于安全性和可靠性的考虑,仅支持单重继承,而通过使用接口机制来实现多重继承。Java是一门面向对象编程语言,不仅吸收了C++...

java继承多态和抽象类接口?
(1)继承的优点:①代码的可重用性;②父类的属性的方法可用于子类;③子类可扩展父类的属性和方法;④设计应用程序变得更加简单。(2)关键字“isa”用于判断父类和子类的继承关系是否正确。(3)Java中继承的实现:public class 子类extends 父类{} (4)继承的单根性:在Java中一个类只能有一个父类;...

java 编程中 单继承的局限性 是什么
单继承的局限就是不能多继承 另外会是两个类的耦合性增加,如果父类有改动时会直接影响子类

java语言中继承的特点是什么?多态有什么好处?
包含父类的方法,还可以添加自己独有的方法。二.多态 方法名称允许相同,但根据传入参数的类型,个数不同形成多态的形式. 方法覆盖要满足5个条件:(方法覆盖:存在继承关系)1、方法名称一致 2、参数一致 3、返回值一致 4、方法的权限不能比父类的小 5、不能比父类抛出更多的异常 ...

java面向对象程序设计有什么优缺点
优点1、抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。2、继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了...

java语言的优点是什么?
1、简单性:Java语言继承了C++语言的优点,去掉了C++中学习起来比较难的多继承、指针等概念,所以Java语言学习起来更简单,使用起来也更方便。2、面向对象:Java是一种面向对象的编程语言。3、分布性:Java设计成支持在网络上应用,它是分布式语言。所以只要用Java编写了一个程序,就可以到处应用。可以节省...

多继承有什么坏处,为什么java搞单继承,接口为什么可以摈弃这些坏处...
正因为有以上的致命缺点,所以java中禁止一个类继承多个父类;在接口中不能有实例变量,只能有静态的常量,不能有具体的方法(包含方法体),只能有抽象方法,因此也就摒弃了多继承的缺点。对于一个类实现多个接口的情况,因为接口只有抽象方法,具体方法只能由实现接口的类实现,在调用的时候始终只会调用...

相似回答