为什么java是“单继承”的?这样设计有什么优劣?_java类的元数据是什么[通俗易懂]

为什么java是“单继承”的?这样设计有什么优劣?_java类的元数据是什么[通俗易懂]花10分钟认真的看完一篇文章,或许会有意想不到的收获!我们都知道java是单继承的,就是一个类只能extends一个父类

花10分钟认真的看完一篇文章,或许会有意想不到的收获!

593244b0d13fd9e5bf31411f9aec06fd.png

我们都知道java是单继承的,就是一个类只能extends一个父类。但是你知道吗,其实java中有一个类是所有类的父类,就是Object类,这是一种单根继承结构。那么java语言在设计的时候为什么要这么做呢?今天我们就来一探究竟!

01是如何继承Object类的

java中所有类在没有声明要继承的类的时候,都会默认去继承Object类

通过上面这句话,我们其实可以推断出,Object其实是java中所有类的父类。

一、我们来看一下javaAPI中Object都有哪些方法

bf58093c81894124bc8785ab1646e0cd.png

4921b0732f60e4b0ea08b7b97898fcd7.png

二、我们再来看一个例子

222b7b7f095fdcf828f9182e55b7c600.png

classTest这个类没有继承任何类,也没有显式地去继承Object类,但是有Object类的所有方法。所以,这就印证了我们上面的那句话:java中所有类在没有声明要继承的类的时候,都会默认去继承Object类

02单根继承的好处

一、单根继承结构中所有对象都具有一个共用接口,所以它们归根到底都是相同的基本类型。这样一来就很利于java的向上转型了。传递参数的时候如果不明确是传什么参数,就可以用Object代替。

public void function(Object ob)

这样这个方法可以接收String类型的参数,也可以接收int类型的参数了。因为String和int都继承了Object,本质上是一种类型。

二、每个类都有了一些很常用的基础功能了,想equals、toString这些方法都是非常常用,甚至是每个类都需要的。当采用单根继承结构时就可以让所有的类都拥有这些方法了。

三、方便垃圾回收机制,因为可以从Object这个跟上一点一点的往下找,方便找到垃圾的位置

说到底,java语言这样去设计就是为了更好的代码复用和带来更好的程序执行效率。

本文相关词条概念解析:

继承

继承(拼音jìchéng),指一个对象直接使用另一对象的属性和方法。也指按照法律或遵照遗嘱接受死者的财产、职务、头衔、地位等。继承权被剥夺后,该继承人即丧失了承受遗产的权利。继承制度是同特定的社会制度相联系的,是在社会出现私有制、分裂为阶级以后随同国家的产生而产生的。继承人接受或放弃继承的意思表示,是单方行为,具有法律效力。继承机制规定,子类可以拥有超类的所有属性和方法,也可以扩展定义自己特有的属性,增加新方法和重新定义超类的方法。

今天的文章为什么java是“单继承”的?这样设计有什么优劣?_java类的元数据是什么[通俗易懂]分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/84881.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注