深入Java萬物之母Object類詳情
前言
在Java中,有一個很神奇的類,所有的類見了它都得恭敬的叫一聲“父親”,因?yàn)樗褪荍ava中的萬物之父,Object類,它是所有類的默認(rèn)父類 ,子類不用使用extends關(guān)鍵字繼承它,不管是JDK中的類,還是自定義的類
一、接口補(bǔ)充知識
1.接口和接口之間繼承的,接口堅(jiān)決不能繼承一個類

2.如果一個類既需要繼承一個類,又需要實(shí)現(xiàn)多個接口時先使用extends繼承一個類,再使用implement實(shí)現(xiàn)多個接口

3.關(guān)于接口的命名規(guī)范:為了區(qū)分接口和類,命名接口使用 I 開頭,IRun,ISwim,子類實(shí)現(xiàn)一個接口時,命名以相應(yīng)的接口開頭,以impl結(jié)尾
eg:如果是IRun的子類,RunImpl
如果子類實(shí)現(xiàn)多個父接口,不需要使用此規(guī)范來命名
二、Object類
在Java中Object類是萬物之母
全名稱:包名.類名
java.lang.Object
1.重點(diǎn)一
Object類是Java中所有類的默認(rèn)父類,無需使用extends來定義,class聲明的類都有一個共同的父類,Object類
因?yàn)镺bject類是所有類的父類,使用Object引用來接收所有的類型,所有類都可以向上轉(zhuǎn)型轉(zhuǎn)為Object,參數(shù)最高統(tǒng)一化
Object obj1 = new Dog();
Object obj2 = new Person();
Objcet obj3 = new String();
這些都是可以的,都可以向上轉(zhuǎn)型為Object類型
如果有一個方法fun(Object obj),那么obj就可以接收所有類型的對象

2.重點(diǎn)二
Object類中的所有方法子類全都繼承下來了
我們的打印方法System.out.println(任意的數(shù)據(jù)類型) – > 默認(rèn)調(diào)用了該數(shù)據(jù)類型的toString()方法,因?yàn)镺bject類中存在toString();
此時子類沒有覆寫toString(),調(diào)用的就是Object的toString();

我們一直說“覆寫”一下toString();而不說寫一個toString方法,就是因?yàn)镺bject類中有toString方法,子類覆寫后就調(diào)用子類覆寫之后的

3.重點(diǎn)三
Java中引用數(shù)據(jù)類型之間的相等使用equals方法,不能使用“ == ”, 比較的是地址

沒覆寫之前調(diào)用的父類的equals方法還是比較的地址:


4.重點(diǎn)四
Object不僅是所有類(class)的父類,JDK對Object類做了擴(kuò)展,Object類可以接收所有引用數(shù)據(jù)類型的對象(接口,數(shù)組,類)

接口對象,數(shù)組對象,這些看起來毫不相關(guān)的對象,都可以使用object來接收,因此在Java中,若一個方法參數(shù)或者返回值是Object類型,說明該參數(shù)或者返回值可以接收任意引用數(shù)據(jù)類型(數(shù)組,類,接口)
除了8大基本類型沒法使用Object類接收以外,所有的類型都能使用Object來接受,為了讓Object可以接收所有的類,此時包裝類就應(yīng)運(yùn)而生了,把8大基本類型變?yōu)轭悺?/p>
總結(jié)
本篇博客只是先帶大家了解Java中這個特殊的類,Object是Java中所有類的父類,它可以接收所有的引用數(shù)據(jù)類型的對象

到此這篇關(guān)于Java萬物之母Object類詳情的文章就介紹到這了,更多相關(guān)Java Object類內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
實(shí)戰(zhàn)干貨之基于SpringBoot的RabbitMQ多種模式隊(duì)列
RabbitMQ 是一個由Erlang語言開發(fā)的AMQP的開源實(shí)現(xiàn),支持多種客戶端。用于在分布式系統(tǒng)中存儲轉(zhuǎn)發(fā)消息,在易用性、擴(kuò)展性、高可用性等方面表現(xiàn)不俗,下文將帶你深入了解 RabbitMQ 多種模式隊(duì)列2021-09-09
springboot整合security和vue的實(shí)踐
本文主要介紹了springboot整合security和vue的實(shí)踐,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-09-09
使用OpenFeign實(shí)現(xiàn)服務(wù)調(diào)用的方法詳解
OpenFeign是運(yùn)行在客戶端的聲明式服務(wù)調(diào)用的框架,通過聲明接口的方式來達(dá)到對服務(wù)的調(diào)用,本文就來和大家講講如何使用OpenFeign實(shí)現(xiàn)服務(wù)調(diào)用吧2023-06-06

