Java日常練習題,每天進步一點點(14)
承蒙各位厚愛,我們一起每天進步一點點?。ㄊ髽诉x中空白處查看答案)
1、下面程序的運行結果:()
public static void main(String args[]) { Thread t=new Thread(){ public void run(){ dianping(); } }; t.run(); System.out.print("dazhong"); } static void dianping(){ System.out.print("dianping"); }
正確答案: B
dazhongdianping
dianpingdazhong
a和b都有可能
dianping循環(huán)輸出,dazhong夾雜在中間
題解:
在上面main()方法中,并沒有創(chuàng)建一個新的線程,只是簡單地方法調用而已,如果想要創(chuàng)建線程,需要t.start();創(chuàng)建線程,等待cpu時間片,而run()方法只是簡單地方法調用,所以先執(zhí)行run(),在輸出dazhong
2、如果int x=20, y=5,則語句System.out.println(x+y +""+(x+y)+y); 的輸出結果是()
正確答案: D
2530
55
2052055
25255
題解:
1)不論有什么運算,小括號的優(yōu)先級都是最高的,先計算小括號中的運算,得到x+y +""+25+y
2)任何字符與字符串相加都是字符串,但是是有順序的,字符串前面的按原來的格式相加,字符串后面的都按字符串相加,得到25+“”+25+5
3)上面的結果按字符串相加得到25255
3、有以下類定義:
abstract class Animal{ abstract void say(); } public class Cat extends Animal{ public Cat(){ System.out.printf("I am a cat"); } public static void main(String[] args) { Cat cat=new Cat(); } }
運行后:
正確答案: B
I am a cat
Animal能編譯,Cat不能編譯
Animal不能編譯,Cat能編譯
編譯能通過,但是沒有輸出結果
題解:
當一個實體類集成一個抽象類,必須實現(xiàn)抽象類中的抽象方法,抽象類本身沒有錯誤,但是cat類編譯通不過
4、以下代碼的輸出的正確結果是
public class Test { public static void main(String args[]) { String s = "祝你考出好成績!"; System.out.println(s.length()); } }
正確答案: D
24
16
15
8
題解:
別想太多,length() 方法返回的就是字符串的長度,一個 char 可以存下漢字,剩下的數(shù)數(shù)就完事了。
如果想獲得占用字節(jié)數(shù)的話,可以用 s.getBytes(“GBK”).length,結果就是 16 了。
5、下列說法正確的是()
正確答案: B
在類方法中可用this來調用本類的類方法
在類方法中調用本類的類方法時可直接調用
在類方法中只能調用本類中的類方法
在類方法中絕對不能調用實例方法
題解:
在類方法中不能有this關鍵字,,直接調用類方法即可,A錯誤,B正確,在類方法中可以通過創(chuàng)建實例對象調用類的實例方法,C、D錯誤
6、以下代碼輸出的是:
public class SendValue{ public String str="6"; public static void main(String[] args) { SendValue sv=new SendValue(); sv.change(sv.str); System.out.println(sv.str); } public void change(String str) { str="10"; } }
正確答案: A
6
10
都不對
16
題解:
7、非抽象類實現(xiàn)接口后,必須實現(xiàn)接口中的所有抽象方法,除了abstract外,方法頭必須完全一致.
正確答案: B
正確
錯誤
題解:
方法頭:包括修飾符(可大),返回值(可?。?、方法名
方法名與參數(shù)相同時:
修飾符:可以大于等于父類方法的訪問權限,而非必須一致
返回值:可以小于父類方法返回的類型,而非必須一致
實現(xiàn)接口中的方法是重寫要求 沒必須完全一樣 如接口中返回值是Object 實現(xiàn)接口方法返回值可以是其他的
8、下列關于容器集合類的說法正確的是?
正確答案: C
LinkedList繼承自List
AbstractSet繼承自Set
HashSet繼承自AbstractSet
WeakMap繼承自HashMap
題解:
A.LinkedList是繼承自AbstractSequentialList(抽象類,實現(xiàn)了List接口)的,并且實現(xiàn)了List接口。所以A錯誤。
B.AbstractSet是實現(xiàn)了Set接口的,本身是一個抽象類。繼承自AbstractCollection(抽象類,實現(xiàn)了Collection接口)。所以B錯誤。
C.HashSet是繼承自AbstractSet,實現(xiàn)了Set接口。所以C正確。
D.WeakMap不存在于java集合框架的。只有一個叫做WeakHashMap(繼承自AbstractMap)。
9、下面說法正確的是?()
正確答案:B C
調用Thread的sleep()方法會釋放鎖,調用wait()方法不釋放鎖
一個線程調用yield方法,可以使具有相同優(yōu)先級線程獲得處理器
在Java中,高優(yōu)先級的可運行的線程會搶占低優(yōu)先級線程的資源
java中,線程可以調用yield方法使比自己低優(yōu)先級的線程運行
題解:
yiled方法屬于高風亮節(jié)的行為,這個坑位我不上了,后面跟我同級別的先上廁所。這樣比較好記!
高優(yōu)先級的就是你們的縣長,縣長要上廁所,對不起,你得出來,縣長先上,縣長上完了,CPU分配到你了,你才能繼續(xù)拉X。
10、下面的對象創(chuàng)建方法中哪些會調用構造方法 ()?
正確答案:A C
new語句創(chuàng)建對象
調用Java.io.ObjectInputStream的readObject方法
java反射機制使用java.lang.Class或java.lang.reflect.Constructor的newInstance()方法
調用對象的clone()方法
題解:
題目的四個選項是構造方法new,序列化對象,反射,克隆分別創(chuàng)建一個對象的方法,,只有new和反射用到了構造方法
答案匯總:
1、正確答案: B
2、正確答案: D
3、正確答案: B
4、正確答案: D
5、正確答案: B
6、正確答案: A
7、正確答案: B
8、正確答案: C
9、正確答案: B C
10、正確答案: A C
總結
本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關注腳本之家的更多內容!
相關文章
SpringBoot創(chuàng)建RSocket服務器的全過程記錄
RSocket應用層協(xié)議支持 Reactive Streams語義, 例如:用RSocket作為HTTP的一種替代方案。這篇文章主要給大家介紹了關于SpringBoot創(chuàng)建RSocket服務器的相關資料,需要的朋友可以參考下2021-05-05詳解SimpleDateFormat的線程安全問題與解決方案
這篇文章主要介紹了SimpleDateFormat的線程安全問題與解決方案,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2017-03-03java數(shù)組的三種擴容方式以及程序實現(xiàn)詳解
這篇文章主要介紹了java數(shù)組的三種擴容方式以及程序實現(xiàn)詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-12-12一文學透ApplicationContext繼承接口功能及與BeanFactory區(qū)別
這篇文章主要為大家介紹了ApplicationContext繼承接口功能及與BeanFactory區(qū)別示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-04-04