黑马程序员技术交流社区
标题:
为什么父类不抛异常,子类就不能抛异常
[打印本页]
作者:
android小学徒
时间:
2015-10-17 12:01
标题:
为什么父类不抛异常,子类就不能抛异常
为什么父类不抛异常,子类就不能抛异常
作者:
wome789
时间:
2015-10-17 12:33
因为继承必须满足 里氏代换原则 子类必须可以在任何场合替换父类。如果父类没有异常,而子类抛了,那就不能随便替换了。
里氏代换原则面向对象设计的基本原则之一。 里氏代换原则中说,任何基类可以出现的地方,子类一定可以出现。 LSP是继承复用的基石,只有当衍生类可以替换掉基类,软件单位的功能不受到影响时,基类才能真正被复用,而衍生类也能够在基类的基础上增加新的行为。里氏代换原则是对“开-闭”原则的补充。实现“开-闭”原则的关键步骤就是抽象化。而基类与子类的继承关系就是抽象化的具体实现,所以里氏代换原则是对实现抽象化的具体步骤的规范。
作者:
罗志辉
时间:
2015-10-17 12:39
举个简单例子:
父类是动物,子类是狗,但是在创建子类对象时假设存在异常,将狗创建成一部手机,手机能是动物么?
解决方式是:将该异常内部解决,不抛出
作者:
海狮
时间:
2015-10-17 22:37
不太理解~~
作者:
大地z灵
时间:
2015-10-18 09:53
父类没有的异常,子类当然不能抛给父类,只能自己内部处理。
作者:
LLLLL
时间:
2015-10-18 11:14
66666666666666666666666666
作者:
toypaoa
时间:
2015-10-18 12:22
瞬间理解里氏变换法则。。。
作者:
itheima_casper
时间:
2015-10-18 12:28
wome789 发表于 2015-10-17 12:33
因为继承必须满足 里氏代换原则 子类必须可以在任何场合替换父类。如果父类没有异常,而子类抛了,那就不能 ...
学习了。。
作者:
ln0491
时间:
2015-10-18 12:52
不错。。。。。。。。。。。。。。。
作者:
迷茫不堪的年纪
时间:
2015-10-19 00:38
看了下他们的回复,总结结果是。 父子关系 。 老子传承你的都是对的, 如果最后你做错了,那么都是你的错(异常)
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2