常被問(wèn)到的一些Java面試題,你被問(wèn)到了幾個(gè)

常被問(wèn)到的一些Java面試題,你被問(wèn)到了幾個(gè)

天津卓眾教育      2022-04-09 07:21:01     17

常被問(wèn)到的一些Java面試題,你被問(wèn)到了幾個(gè),  大家平常在面試中遇到不少難題,針對(duì)一些即將要去面試的同學(xué),小編整理出了一些常被問(wèn)到,比較難的技術(shù)問(wèn)題,供大家參考: 

課程價(jià)格 請(qǐng)咨詢(xún)

上課時(shí)段: 授課校區(qū):

詳細(xì)介紹

 

  大家平常在面試中遇到不少難題,針對(duì)一些即將要去面試的同學(xué),小編整理出了一些常被問(wèn)到,比較難的技術(shù)問(wèn)題,供大家參考:

 

 

  1、一個(gè)".java"源文件中是否可以包括多個(gè)類(lèi)(不是內(nèi)部類(lèi))?有什么限制?

  可以有多個(gè)類(lèi),但只能有一個(gè)public的類(lèi),并且public的類(lèi)名必須與文件名相一致。

  2、Java有沒(méi)有g(shù)oto?

  java中的保留字,現(xiàn)在沒(méi)有在java中使用。

  3、說(shuō)說(shuō)&和&&的區(qū)別。

  &和&&都可以用作邏輯與的運(yùn)算符,表示邏輯與(and),當(dāng)運(yùn)算符兩邊的表達(dá)式的結(jié)果都為true時(shí),整個(gè)運(yùn)算結(jié)果才為true,否則,只要有一方為false,則結(jié)果為false。 &&還具有短路的功能,即如果第一個(gè)表達(dá)式為false,則不再計(jì)算第二個(gè)表達(dá)式。 &還可以用作位運(yùn)算符,當(dāng)&操作符兩邊的表達(dá)式不是boolean類(lèi)型時(shí),&表示按位與操作。

  4、在JAVA中如何跳出當(dāng)前的多重嵌套循環(huán)?

  在Java中,要想跳出多重循環(huán),可以在外面的循環(huán)語(yǔ)句前定義一個(gè)標(biāo)號(hào),然后在里層循環(huán)體的代碼中使用帶有標(biāo)號(hào)的break語(yǔ)句,即可跳出外層循環(huán)。

  5、switch語(yǔ)句能否作用在byte上,能否作用在long上,能否作用在String上?

  在switch(expr1)中,expr1只能是一個(gè)整數(shù)表達(dá)式或者枚舉常量(更大字體),整數(shù)表達(dá)式可以是int基本類(lèi)型或Integer包裝類(lèi)型,由于,byte,short,char都可以隱含轉(zhuǎn)換為int,所以,這些類(lèi)型以及這些類(lèi)型的包裝類(lèi)型也是可以的。顯然,long類(lèi)型不符合switch的語(yǔ)法規(guī)定,并且不能被隱式轉(zhuǎn)換成int類(lèi)型,所以,它不能作用于swtich語(yǔ)句中。String在jdk1.7以后可以使用。

  6、char型變量中能不能存貯一個(gè)中文漢字?為什么?

  char型變量是用來(lái)存儲(chǔ)Unicode編碼的字符的,unicode編碼字符集中包含了漢字,所以,char型變量中當(dāng)然可以存儲(chǔ)漢字啦。不過(guò),如果某個(gè)特殊的漢字沒(méi)有被包含在unicode編碼字符集中,那么,這個(gè)char型變量中就不能存儲(chǔ)這個(gè)特殊漢字。補(bǔ)充說(shuō)明:unicode編碼占用兩個(gè)字節(jié),所以,char類(lèi)型的變量也是占用兩個(gè)字節(jié)。

  7、使用final關(guān)鍵字修飾一個(gè)變量時(shí),是引用不能變,還是引用的對(duì)象不能變?

  使用final關(guān)鍵字修飾一個(gè)變量時(shí),是指引用變量不能變,引用變量所指向的對(duì)象中的內(nèi)容還是可以改變的。

  8、靜態(tài)變量和實(shí)例變量的區(qū)別?

  在語(yǔ)法定義上的區(qū)別:靜態(tài)變量前要加static關(guān)鍵字,而實(shí)例變量前則不加。

  在程序運(yùn)行時(shí)的區(qū)別:實(shí)例變量屬于某個(gè)對(duì)象的屬性,必須創(chuàng)建了實(shí)例對(duì)象,其中的實(shí)例變量才會(huì)被分配空間,才能使用這個(gè)實(shí)例變量。靜態(tài)變量不屬于某個(gè)實(shí)例對(duì)象,而是屬于類(lèi),所以也稱(chēng)為類(lèi)變量,只要程序加載了類(lèi)的字節(jié)碼,不用創(chuàng)建任何實(shí)例對(duì)象,靜態(tài)變量就會(huì)被分配空間,靜態(tài)變量就可以被使用了。

  9、是否可以從一個(gè)static方法內(nèi)部發(fā)出對(duì)非static方法的調(diào)用?

  不可以。因?yàn)榉莝tatic方法是要與對(duì)象關(guān)聯(lián)在一起的,必須創(chuàng)建一個(gè)對(duì)象后,才可以在該對(duì)象上進(jìn)行方法調(diào)用,而static方法調(diào)用時(shí)不需要?jiǎng)?chuàng)建對(duì)象,可以直接調(diào)用。

  也就是說(shuō),當(dāng)一個(gè)static方法被調(diào)用時(shí),可能還沒(méi)有創(chuàng)建任何實(shí)例對(duì)象,如果從一個(gè)static方法中發(fā)出對(duì)非static方法的調(diào)用,那個(gè)非static方法是關(guān)聯(lián)到哪個(gè)對(duì)象上的呢?這個(gè)邏輯無(wú)法成立,所以,一個(gè)static方法內(nèi)部發(fā)出對(duì)非static方法的調(diào)用。

  10、java中實(shí)現(xiàn)多態(tài)的機(jī)制是什么?

  靠的是父類(lèi)或接口定義的引用變量可以指向子類(lèi)或具體實(shí)現(xiàn)類(lèi)的實(shí)例對(duì)象,而程序調(diào)用的方法在運(yùn)行期才動(dòng)態(tài)綁定,就是引用變量所指向的具體實(shí)例對(duì)象的方法,也就是內(nèi)存里正在運(yùn)行的那個(gè)對(duì)象的方法,而不是引用變量的類(lèi)型中定義的方法。

  11、內(nèi)部類(lèi)可以引用它的包含類(lèi)的成員嗎?有沒(méi)有什么限制?

  完全可以。如果不是靜態(tài)內(nèi)部類(lèi),那沒(méi)有什么限制!

  如果你把靜態(tài)嵌套類(lèi)當(dāng)作內(nèi)部類(lèi)的一種特例,那在這種情況下不可以訪問(wèn)外部類(lèi)的普通成員變量,而只能訪問(wèn)外部類(lèi)中的靜態(tài)成員。

      以上就是天津卓眾教育Java培訓(xùn)機(jī)構(gòu)小編介紹的“常被問(wèn)到的一些Java面試題,你被問(wèn)到了幾個(gè)”的內(nèi)容,希望對(duì)大家有幫助,如有疑問(wèn),請(qǐng)?jiān)诰€咨詢(xún),有專(zhuān)業(yè)老師隨時(shí)為你服務(wù)。

 

 

相關(guān)推薦

最新最全java面試題及答案(初級(jí)到高級(jí))

史上最全的中高級(jí)JAVA工程師面試題及答案匯總

Java高級(jí)開(kāi)發(fā)工程師面試題

2019史上最全java面試題題庫(kù)大全800題

哪有資深java工程師面試題

 

Java面試題

培訓(xùn)啦提醒您:交易時(shí)請(qǐng)核實(shí)對(duì)方資質(zhì),對(duì)于過(guò)大宣傳或承諾需謹(jǐn)慎!任何要求預(yù)付定金、匯款等方式均存在風(fēng)險(xiǎn),謹(jǐn)防上當(dāng)。