大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 10道一線互聯網企業常問的Java面試題大全

10道一線互聯網企業常問的Java面試題大全

更新時間:2019-09-18 14:35:26 來源:動力節點 瀏覽2536次



  1、面向對象的特征有哪些方面?


  -抽象:抽象是將一類對象的共同特征總結出來構造類的過程,包括數據抽象和行為抽象兩方面。抽象只關注對象有哪些屬性和行為,并不關注這些行為的細節是什么。


  -繼承:繼承是從已有類得到繼承信息創建新類的過程。提供繼承的類叫父類(超類、基類)、得到繼承的類叫子類(派生類)。


  -封裝:通常認為封裝是把數據和操作數據的方法綁定起來,對數據的訪問只能通過已定義的接口。可以說,封裝就是隱藏一切可隱藏的東西,只向外界提供最簡單的編程接口(可以想想普通洗衣機和全自動洗衣機的差別,明顯全自動洗衣機封裝更好因此操作起來更簡單;我們現在使用的智能手機也是封裝得足夠好的,因為幾個按鍵就搞定了所有的事情)。


  -多態性:多態性是指允許不同子類型的對象對同一消息作出不同的響應。簡單的說就是用同樣的對象引用調用同樣的方法但是做了不同的事情。實現多態需要做兩件事:1).方法重寫(子類繼承父類并重寫父類中的方法);2).對象造型(用父類型引用引用子類型對象,這樣同樣的引用調用同樣的方法就會根據子類對象的不同而表現出不同的行為)


  2、訪問修飾符public,private,protected,以及不寫(默認)時的區別?

image.png

  3、String是最基本的數據類型嗎?


  答:不是。Java中的基本數據類型只有8個:byte、short、int、long、float、double、char、boolean;除了基本類型(primitivetype)和枚舉類型(enumerationtype),剩下的都是引用類型(referencetype)。


  4、floatf=3.4;是否正確?


  答:不正確。3.4是雙精度數,將雙精度型(double)賦值給浮點型(float)屬于下轉型(down-casting,也稱為窄化)會造成精度損失,因此需要強制類型轉換floatf=(float)3.4;或者寫成floatf=3.4F;。


  5、shorts1=1;s1=s1+1;有錯嗎?shorts1=1;s1+=1;有錯嗎?


  答:對于shorts1=1;s1=s1+1;由于1是int類型,因此s1+1運算結果也是int型,需要強制轉換類型才能賦值給short型。而shorts1=1;s1+=1;可以正確編譯,因為s1+=1;相當于s1=(short)(s1+1);其中有隱含的強制類型轉換。


  6、int和Integer有什么區別?


  答:Java是一個近乎純潔的面向對象編程語言,但是為了編程的方便還是引入了基本數據類型,但是為了能夠將這些基本數據類型當成對象操作,Java為每一個基本數據類型都引入了對應的包裝類型(wrapperclass),int的包裝類就是Integer,從Java5開始引入了自動裝箱/拆箱機制,使得二者可以相互轉換。

image.png


  最近還遇到一個面試題,也是和自動裝箱和拆箱有點關系的,代碼如下所示:

image.png

  如果不明就里很容易認為兩個輸出要么都是true要么都是false。首先需要注意的是f1、f2、f3、f4四個變量都是Integer對象引用,所以下面的==運算比較的不是值而是引用。裝箱的本質是什么呢?當我們給一個Integer對象賦一個int值的時候,會調用Integer類的靜態方法valueOf

image.png

  簡單的說,如果整型字面量的值在-128到127之間,那么不會new新的Integer對象,而是直接引用常量池中的Integer對象,所以上面的面試題中f1==f2的結果是true,而f3==f4的結果是false。


  7、&和&&的區別?


  雖然二者都要求運算符左右兩端的布爾值都是true整個表達式的值才是true。&&之所以稱為短路運算是因為,如果&&左邊的表達式的值是false,右邊的表達式會被直接短路掉,不會進行運算。很多時候我們可能都需要用&&而不是&,例如在驗證用戶登錄時判定用戶名不是null而且不是空字符串,應當寫為:username!=null&&!username.equals(“”),二者的順序不能交換,更不能用&運算符,因為第一個條件如果不成立,根本不能進行字符串的equals比較,否則會產生NullPointerException異常。注意:邏輯或運算符(|)和短路或運算符(||)的差別也是如此。


  8、解釋內存中的棧(stack)、堆(heap)和靜態區(staticarea)的用法。


  棧空間操作起來最快但是棧很小,通常大量的對象都是放在堆空間


  Stringstr=newString("hello");


  上面的語句中變量str放在棧上,用new創建出來的字符串對象放在堆上,而”hello”這個字面量放在靜態區。


  9、Math.round(11.5)等于多少?Math.round(-11.5)等于多少?


  答:Math.round(11.5)的返回值是12,Math.round(-11.5)的返回值是-11。四舍五入的原理是在參數上加0.5然后進行下取整。


  10、switch是否能作用在byte上,是否能作用在long上,是否能作用在String上?


  expr可以是byte、short、char、int、enum、String類型,但是long類型不能


  以上就是動力節點java培訓機構小編為大家介紹的“10道一線互聯網企業常問的Java面試題大全”的內容,希望對大家有幫助,更多java最新資訊請繼續關注動力節點java培訓機構官網,每天會有精彩內容分享與你。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 亚洲综合视频网 | freexxxx性大陆另类 | 国内精品久久久久久西瓜色吧 | 免费区一级欧美毛片 | 国产精品合集一区二区 | 日本午夜免费理论片 | 狠狠操天天射 | 国产精品国产三级国产专区5o | 韩国午夜剧场 | 99久久香蕉国产综合影院 | 伊人久久综在合线亚洲91 | 国产欧美综合在线一区二区三区 | 国产精品主播在线 | 亚洲七七久久精品中文国产 | 日韩精品在线一区 | 亚洲国产精品久久久天堂麻豆 | 亚洲日本视频 | 天天添天天干 | 狠狠色丁香婷婷综合激情 | 亚洲精品一区二区三区在线观看 | 伊人久久在线视频 | 99热热热| 欧美精品亚洲人成在线观看 | 国产高清一区二区三区四区 | 4虎 影视 免费 | 久久精品国产亚洲片 | 欧美国产日产精品免费视频 | 欧美综合图 | 中国一级全黄的免费观看 | 天天摸天天爽天天澡视频 | 国产女人天堂 | 久在草影院 | 久久精品视频日本 | 久久天天躁狠狠躁狠狠躁 | 国产成版人视频网站免费下 | 国产精品呦呦 | 日本欧美一区二区三区 | 久久国产精品一国产精品金尊 | 久操综合在线 | 91福利视频免费观看 | 亚洲精品高清在线一区二区三区 |