2016 - 2024

感恩一路有你

java语言输入一个菱形 Java为什么不支持多继承?

浏览量:4375 时间:2023-07-27 12:49:20 作者:采采

Java为什么不支持多继承?

谢谢啦邀请,这里我简单的说再看看我的看法这里要可以区分下java8之前和之后:是需要去学习java要从生活去探讨一番,这事情就没那你奇怪了,举个最简单的例子,一个人有一个亲生儿子父亲,这是对的吧!那你java中将生活中的例子在类中非常好的体现出来了不出来!继承的主要目的就是子承父业,都没有达到更好的代码分时复用性!

下一步我们从代码层面上了解帮一下忙:

举例A-rlm继承B这样可以推知这个可以我得到B类中方法A类中时是可以在用的(再注意这里再说成员变量的问题);

再打比方A-dstrok可以继承BA-r26继承C,而此时B和C类中都声明了某一个同名原著的方法,那样的话A类就为难了,A类中完全没有写回B、C中的方法,这样A类使用时究竟有没有用B呢?应该C呢?

我大概A自己也晕乎乎的,哈哈。这样替避免这样为难的事情发生了什么,java不愿意直接出现这种。只不过值的注意的时:java中时存在多可以继承的,那就是接口:

这里就好玩点了,为啥接口也可以?尽量接口是一种规则的体现,它阐明的是一种标准:

题中员工类可以继承了人类,我们清楚,人类有一些特性,可是差别的员工类他的职责是完全不同的,.例如:A员工(一个员工的实例),他是一个文员,他用电脑专用不光好,不过会篮球。则是B员工(一个员工的实例),他是一个财务,他也会电脑,不过他会玩篮球。那你此时会有一个问题,我们上述事项的三个功能:玩电脑,打篮球,打蓝球要最好不要放进人类中,我们很清楚员工类可以继承自人类。

答案是千万不能,是因为这样会会造成父类实在是太臃肿笨重。此时接口就出现了,Emp(员工)extendsPerson(人类)implement PlayFootball,那样的话是不是好呢!一个球踢得好的,可能你是不是同时很清楚踢足球的规则呢,这样的话就有了PlayFootballextendsChiese(的蹴鞠)extendsEnglish(德式篮球)。只不过标准很多呀,一个足球运动员会体足球,他同样的很可能短跑也很厉害!

不晓得那样的话说能不能让大家理解,是因为是全手到,因为真的不不愿意花精力,大家有问题这个可以然后关注我的头条号:IT蛇精病,没什么事私聊就行!哈哈哈或者右上角参与一炮!嘿,前有发过这方面的文章,大家也可以去看看

Java为什么不能继承多个父类?

这个问题,java之父那一次回答我过,设计java语言的初衷应该是要设计什么一门十分很简单语言,因此java的设计屏蔽掉了一些负载的东西,其中就和指针和多可以继承。为么说多不能继承奇怪呢?这现在就要说一个多能继承的棱形继承问题(又叫钻石继承)。

菱形继承(钻石无法继承)

问题 java 员工

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。