大战熟女丰满人妻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培訓機構官網,每天會有精彩內容分享與你。

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

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 国产精品主播在线 | 很黄的网站在线观看 | 亚洲一级毛片视频 | 鲁啊鲁啊鲁在线视频播放 | 国产精品一区二区不卡 | 中文字幕日韩女同互慰视频 | 成年性视频bbixx | 亚洲一区二区三区四区热压胶 | 日韩不卡一级毛片免费 | 国产成人毛片精品不卡在线 | 四虎在线最新永久免费播放 | 午夜精品久久久久久久99热浪潮 | 久久久综合九色合综 | 视频三区精品中文字幕 | 日本一区二区中文字幕 | 一级做性色a爱片久久片 | 久久香蕉国产线看观看精品yw | 色综合综合色 | 国产视频国产 | 福利在线网 | 国产成人啪一区二区 | 91av最新地址 | 成年看片永远免费 | 免费播放一区二区三区 | 高清视频在线播放 | 中文字幕三级久久久久久 | 国产乱在线 | 毛片免费全部免费观看 | 天天插天天操天天射 | 国产精品视频福利视频网 | 男人草女人视频 | 日韩视频观看 | 兽皇在线观看 | 欧美日韩专区 | 久久精品99成人中文字幕880 | 九九热国产精品视频 | 午夜成人在线视频 | 欧美色视频在线观看 | 国产毛片久久精品 | 精品国产品欧美日产在线 | www久久久久 |