2020即將來(lái)臨,對(duì)于學(xué)java的工程師來(lái)講,是一個(gè)新的開端,新人面臨新的招聘面試,Java工程師這類型技術(shù)性崗位的面試,總是少不了面試題,長(zhǎng)沙牛耳教育java培訓(xùn)機(jī)構(gòu)小編為大家整理了一套2020java最新面試題及答案,祝大家在2020年都能找到滿意的高薪工作!
一、選擇題
1、Java程序的種類有(BCD )
A.類(Class)
B.Applet
C.Application
D.Servlet
2、下列說法正確的有( BCD)
A. 環(huán)境變量可在編譯source code時(shí)指定
B. 在編譯程序時(shí),所能指定的環(huán)境變量不包括class path
C. javac一次可同時(shí)編譯數(shù)個(gè)Java源文件
D. javac.exe能指定編譯結(jié)果要置于哪個(gè)目錄(directory)
3、下列標(biāo)識(shí)符不合法的有( ACD)
A.new
B.$Usdollars
C.1234
D.car.taxi
4、下列說法錯(cuò)誤的有( BCD)
A. 數(shù)組是一種對(duì)象
B. 數(shù)組屬于一種原生類
C. int number=={31,23,33,43,35,63}
D. 數(shù)組的大小可以任意改變
5、不能用來(lái)修飾interface的有(ACD )
A.private
B.public
C.protected
D.static
6、下列正確的有(ACD )
A. call by value不會(huì)改變實(shí)際參數(shù)的數(shù)值
B. call by reference能改變實(shí)際參數(shù)的參考地址
C. call by reference不能改變實(shí)際參數(shù)的參考地址
D. call by reference能改變實(shí)際參數(shù)的內(nèi)容
7、下列說法錯(cuò)誤的有( ACD)
A. 在類方法中可用this來(lái)調(diào)用本類的類方法
B. 在類方法中調(diào)用本類的類方法時(shí)可直接調(diào)用
C. 在類方法中只能調(diào)用本類中的類方法
D. 在類方法中絕對(duì)不能調(diào)用實(shí)例方法
8、下列說法錯(cuò)誤的有(ABC )
A. Java面向?qū)ο笳Z(yǔ)言容許單獨(dú)的過程與函數(shù)存在
B. Java面向?qū)ο笳Z(yǔ)言容許單獨(dú)的方法存在
C. Java語(yǔ)言中的方法屬于類中的成員(member)
D. Java語(yǔ)言中的方法必定隸屬于某一類(對(duì)象),調(diào)用方法與過程或函數(shù)相同
9、下列說法錯(cuò)誤的有(BCD )
A. 能被java.exe成功運(yùn)行的java class文件必須有main方法
B. J2SDK就是Java API
C. Appletviewer.exe可利用jar選項(xiàng)運(yùn)行.jar文件
D. 能被Appletviewer成功運(yùn)行的java class文件必須有main方法
二、簡(jiǎn)答題
1、在java中如果聲明一個(gè)類為final,表示什么意思?
答:final是最終的意思,final可用于定義變量、方法和類但含義不同,聲明為final的類不能被繼承。
2、父類的構(gòu)造方法是否可以被子類覆蓋(重寫)?
答:父類的構(gòu)造方法不可以被子類覆蓋,因?yàn)楦割惡妥宇惖念惷遣豢赡芤粯拥摹?/p>
3、請(qǐng)講述String 和StringBuffer的區(qū)別。
答:String 類所定義的對(duì)象是用于存放“長(zhǎng)度固定”的字符串。
StringBuffer類所定義的對(duì)象是用于存放“長(zhǎng)度可變動(dòng)”的字符串。
4、如果有兩個(gè)類A、B(注意不是接口),你想同時(shí)使用這兩個(gè)類的功能,那么你會(huì)如何編寫這個(gè)C類呢?
答:因?yàn)轭怉、B不是接口,所以是不可以直接繼承的,但可以將A、B類定義成父子類,那么C類就能實(shí)現(xiàn)A、B類的功能了。假如A為B的父類,B為C的父類,此時(shí)C就能實(shí)現(xiàn)A、B的功能。
5、結(jié)合Java視頻Lesson5(多線程),分析sleep()和wait()方法的區(qū)別。
答: Sleeping睡眠的意思 : sleep() 方法用來(lái)暫時(shí)中止執(zhí)行的線程。在睡眠后,線程將進(jìn)入就緒狀態(tài)。
waiting等待的意思: 如果調(diào)用了 wait() 方法,線程將處于等待狀態(tài)。用于在兩個(gè)或多個(gè)線程并發(fā)運(yùn)行時(shí)。
6、談?wù)勀銓?duì)抽象類和接口的理解。
答:定義抽象類的目的是提供可由其子類共享的一般形式、子類可以根據(jù)自身需要擴(kuò)展抽象類、抽象類不能實(shí)例化、抽象方法沒有函數(shù)體、抽象方法必須在子類中給出具體實(shí)現(xiàn)。他使用extends來(lái)繼承。
接口:一個(gè)接口允許一個(gè)類從幾個(gè)接口繼承而來(lái),Java 程序一次只能繼承一個(gè)類但可以實(shí)現(xiàn)幾個(gè)接口,接口不能有任何具體的方法,接口也可用來(lái)定義可由類使用的一組常量。其實(shí)現(xiàn)方式是interface來(lái)實(shí)現(xiàn)。
7、 Object有哪些公用方法?
a. 方法equals測(cè)試的是兩個(gè)對(duì)象是否相等
b. 方法clone進(jìn)行對(duì)象拷貝
c. 方法getClass返回和當(dāng)前對(duì)象相關(guān)的Class對(duì)象
d. 方法notify,notifyall,wait都是用來(lái)對(duì)給定對(duì)象進(jìn)行線程同步的
8、抽象類和接口的區(qū)別
a. 一個(gè)類只能繼承單個(gè)類,但是可以實(shí)現(xiàn)多個(gè)接口
b. 接口強(qiáng)調(diào)特定功能的實(shí)現(xiàn),而抽象類強(qiáng)調(diào)所屬關(guān)系
c. 抽象類中的所有方法并不一定要是抽象的,你可以選擇在抽象類中實(shí)現(xiàn)一些基本的方法。而接口要求所有的方法都必須是抽象的。
9、 JAVA多態(tài)的實(shí)現(xiàn)原理
a. 抽象的來(lái)講,多態(tài)的意思就是同一消息可以根據(jù)發(fā)送對(duì)象的不同而采用多種不同的行為方式。(發(fā)送消息就是函數(shù)調(diào)用)
b. 實(shí)現(xiàn)的原理是動(dòng)態(tài)綁定,程序調(diào)用的方法在運(yùn)行期才動(dòng)態(tài)綁定,追溯源碼可以發(fā)現(xiàn),JVM 通過參數(shù)的自動(dòng)轉(zhuǎn)型來(lái)找到合適的辦法。
以上就是長(zhǎng)沙牛耳教育java培訓(xùn)機(jī)構(gòu)小編介紹的“2020java最新面試題及答案”的內(nèi)容,希望對(duì)大家有幫助,更多java最新面試題請(qǐng)繼續(xù)關(guān)注長(zhǎng)沙牛耳教育java培訓(xùn)機(jī)構(gòu)官網(wǎng),每天會(huì)有精彩內(nèi)容分享與你。