Java核心面試寶典】Day9、面向對象常見面試題匯總(四)

      網友投稿 631 2022-05-29

      Hello,你好呀,我是灰小猿!一個超會寫bug的程序猿!

      用堅持締造技術、用指尖敲動未來!

      和很多小伙伴們一樣,我也是一名奔波在Java道路上的“創造者”。也想靠技術來改未來,改變世界!因為我們堅信每一次敲動鍵盤都能讓生活變得更智能、世界變得更有趣!

      在此專欄《Java核心面試寶典》記錄我們備戰夢想的【day 9】!

      今天繼續和大家分享在面向對象中類與接口方面的常見面試題。不要小看任何一個基礎技術點,往往最基礎的才是最會考察的內容。

      1、抽象類和接口是否可以被實例化?

      抽象類和接口都不能通過new操作符來創建實例,只能通過具體類創建實例。

      2、包含抽象方法的類是否必須被聲明為抽象類,抽象類是否必須包含抽象方法?

      包含抽象方法的類必須被聲明為抽象類,具體類不能包含抽象方法。而抽象類中可以不包含抽象方法,即使一個類中的所有方法都是具體方法,也可以將這個類聲明為抽象類。

      3、從繼承角度而言,抽象類和接口的區別是什么?

      類的繼承只能是單重繼承,即一個類只能繼承一個父類;但是對接口的繼承是允許多重繼承的, 即一個類可以繼承多個接口,一個接口同樣也可以繼承多個接口,這樣的接口稱為子接口。

      4、從變量、構造方法、方法的角度,闡述抽象類和接口的區別?

      抽象類和接口有以下區別:

      抽象類的變量沒有限制,接口只包含常量,即接口的所有變量必須是public static final

      抽象類包含構造方法,子類通過構造方法鏈調用構造方法,接口沒有構造方法。

      抽象類的方法沒有限制,接口的方法必須是public abstract的實例方法,

      ==同時需要注意==:在新版的JDK中關于接口的規則有了一定的變化,

      從Java8開始,接口方法可以由默認實現,

      從Java9開始,接口內允許定義私有方法。

      5、哪兩個接口可以實現對象之間的排序和比較大小?

      Comparable接口是排序接口。如果一個類實現了 Comparable 接口,則該類的對象可以排序。Comparable 接口包含一個抽象方法 compareTo,實現 Comparable 接口的類需要實現該方法,定義排序的依據。

      Comparator接口是比較器接口。如果一個類本身不支持排序(即沒有實現 Comparable 接口),但是又需要對該類的對象排序,則可以通過實現 Comparator 接口的方式建立比較器。Comparator 接口包含兩個抽象方法 compare和 equals,其中 compare 方法是必須在實現類中實現的,而 equals 方法在任何類中默認已經實現。

      6、如何對一個數組中的多個對象按照不同的依據進行排序?

      為了按照不同的依據進行排序,則需要使用不同的比較器,通過實現 Comparator接口實現比較器,在調用Arrays.sort方法時將數組和比較器作為參數,即可將數組按照指定的比較器進行排序。

      7、除了首字母大寫,包裝類的名稱和對象的基本數據類型是否一定相同?

      不一定,int類型對應的包裝類是Integer,char類型對象的對應的包裝類是Character。

      具體的可以看下面這個表格:

      【Java核心面試寶典】Day9、面向對象常見面試題匯總(四)

      8、包裝類的構造方法的參數可以是什么類型的?包裝類的構造方法是否可以無參數?

      構造方法的參數值可以是基本數據類型的值,也可以是表示值的字符串。包裝類的構造方法都是有參構造的,沒有無參數構造方法。

      9、包裝類的實例是否可變?

      包裝類的實例是不可變的,創建包裝對象之后,其內部的值就不能改變。

      10、什么是自動裝箱和自動拆箱?

      將基本數據類型值轉換為包裝對象,稱為裝箱。將包裝對象轉換為基本數據類型的值稱為拆箱。

      同時,從JDK1.5開始,基本數據類型和包裝類之間可以進行自動轉換。

      今天學習的內容比較簡單,主要就是抽象類和接口使用規范、知道Java是單重繼承的、了解進行對象序列化的兩個常用接口Comparable和Comparator、熟悉基本數據類型和包裝類之間的轉換。

      面向對象的面試題比較多,之后還會繼續總結,如果小伙伴們有遇到其他相關的面試題,歡迎在評論區留言提出,我會把大家提出的總結到文章內`, 歡迎小伙伴們一起評論區打卡學習!小伙伴們可也在左方加我好友一起探討學習!

      我是==灰小猿==,我們下期見!

      Java 面向對象編程

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:【Java核心面試寶典】Day4、基本數據結構常見面試題匯總
      下一篇:每個開發人員都應該知道的 15 個 IntelliJ IDEA 快捷方式
      相關文章
      亚洲色无码专区在线观看| 亚洲制服丝袜中文字幕| 亚洲精品伊人久久久久| 亚洲人成电影在线天堂| 亚洲AV无码欧洲AV无码网站| 亚洲色无码一区二区三区| 亚洲中文久久精品无码| 国产亚洲精品AA片在线观看不加载 | 久久久久久亚洲av成人无码国产| 国产亚洲欧洲Aⅴ综合一区| 亚洲欧洲精品成人久久曰影片 | 在线A亚洲老鸭窝天堂| 中文字幕亚洲第一| 亚洲精品中文字幕乱码三区| 亚洲无线码在线一区观看| 亚洲乱码中文字幕久久孕妇黑人| 亚洲一区无码中文字幕| 亚洲av永久无码精品网站| 亚洲人成电影亚洲人成9999网 | 91亚洲国产成人久久精品网站| 亚洲一区中文字幕久久| 91亚洲va在线天线va天堂va国产 | 午夜亚洲www湿好大| 久久久婷婷五月亚洲97号色| 亚洲精品自拍视频| 亚洲一区二区三区免费视频| 中国china体内裑精亚洲日本| 亚洲国产无线乱码在线观看| 国产亚洲美女精品久久久久| 亚洲国产成人久久精品99| 国产亚洲美日韩AV中文字幕无码成人| 亚洲午夜无码久久久久| 亚洲AV无码一区二区二三区入口 | 午夜影视日本亚洲欧洲精品一区| 久久99亚洲网美利坚合众国 | 亚洲成a人片7777| 国产亚洲中文日本不卡二区 | 亚洲VA综合VA国产产VA中| 久久亚洲精品无码播放| 亚洲AV本道一区二区三区四区| 亚洲高清美女一区二区三区|