Java日常練習(xí)題,每天進(jìn)步一點(diǎn)點(diǎn)(29)
承蒙各位厚愛,我們一起每天進(jìn)步一點(diǎn)點(diǎn)?。ㄊ髽?biāo)選中空白處查看答案)
1、下列不屬于訪問控制符的是()
正確答案: D
public
private
protected
static
題解:
2、Java 源程序文件的擴(kuò)展名為()
正確答案: A
.java
.class
.exe
.jar
題解:
.class 編譯后的Java文件
.java是未編譯的程序
.jsp是頁面程序
.xml配置程序
.jar是.calss的集合
3、以下程序的執(zhí)行結(jié)果是:
static boolean foo(char c)
{
System.out.print©;
return true;
}
public static void main(String[] args) {
int i =0;
for(foo(‘A');foo(‘B')&&(i<2);foo(‘C'))
{
i++;
foo(‘D');
}
}
正確答案: A
ABDCBDCB
ABCDABCD
編譯時(shí)出錯(cuò)
運(yùn)行時(shí)拋出異常
題解:
例子:for(1;2;3){
4;
}
這題考察的應(yīng)該是for循環(huán)的執(zhí)行順序:
1只在開頭執(zhí)行一次便不再執(zhí)行;然后是2->4->3->2->4->3這樣循環(huán)下去;等到滿足終止條件時(shí)到2就停止了,所以選A
4、給定代碼:
public class SwitchTest{//1
public static void main(String[] args) {//2
System.out.println(“value=”+switchit(4));//3
}//4
public static int switchit(int x) {
int j=1;
switch (x) {
case 1:j++;
case 2:j++;
case 3:j++;
case 4:j++;
case 5:j++;
default:j++;
}
return j+x;
}
}
第三行將輸出什么?
正確答案: B
value=6
value=8
value=3
value=5
value=4
題解:
沒有break,從case 4開始一直執(zhí)行到最后,j自加3次變成了4,結(jié)果返回8
5、下面有關(guān)List接口、Set接口和Map接口的描述,錯(cuò)誤的是?
正確答案: A
他們都繼承自Collection接口
List是有序的Collection,使用此接口能夠精確的控制每個(gè)元素插入的位置
Set是一種不包含重復(fù)的元素的Collection
Map提供key到value的映射。一個(gè)Map中不能包含相同的key,每個(gè)key只能映射一個(gè)value
題解:
6、以下代碼的輸出結(jié)果是?
public class B
{
public static B t1 = new B();
public static B t2 = new B();
{
System.out.println(“構(gòu)造塊”);
}
static
{
System.out.println(“靜態(tài)塊”);
}
public static void main(String[] args)
{
B t = new B();
}
}
正確答案: C
靜態(tài)塊 構(gòu)造塊 構(gòu)造塊 構(gòu)造塊
構(gòu)造塊 靜態(tài)塊 構(gòu)造塊 構(gòu)造塊
構(gòu)造塊 構(gòu)造塊 靜態(tài)塊 構(gòu)造塊
構(gòu)造塊 構(gòu)造塊 構(gòu)造塊 靜態(tài)塊
題解:
開始時(shí)JVM加載B.class,對所有的靜態(tài)成員進(jìn)行聲明,t1 t2被初始化為默認(rèn)值,為null,又因?yàn)閠1 t2需要被顯式初始化,所以對t1進(jìn)行顯式初始化,初始化代碼塊→構(gòu)造函數(shù)(沒有就是調(diào)用默認(rèn)的構(gòu)造函數(shù)),咦!靜態(tài)代碼塊咋不初始化?因?yàn)樵陂_始時(shí)已經(jīng)對static部分進(jìn)行了初始化,雖然只對static變量進(jìn)行了初始化,但在初始化t1時(shí)也不會(huì)再執(zhí)行static塊了,因?yàn)镴VM認(rèn)為這是第二次加載類B了,所以static會(huì)在t1初始化時(shí)被忽略掉,所以直接初始化非static部分,也就是構(gòu)造塊部分(輸出'‘構(gòu)造塊'')接著構(gòu)造函數(shù)(無輸出)。接著對t2進(jìn)行初始化過程同t1相同(輸出'構(gòu)造塊'),此時(shí)就對所有的static變量都完成了初始化,接著就執(zhí)行static塊部分(輸出'靜態(tài)塊'),接著執(zhí)行,main方法,同樣也,new了對象,調(diào)用構(gòu)造函數(shù)輸出(‘構(gòu)造塊'),所以選C
7、URL u =new URL(“http://www.123.com”);。如果www.123.com不存在,則返回______。
正確答案: A
http://www.123.com
””
null
拋出異常
題解:
new URL()時(shí)必須捕獲檢查異常,但這個(gè)異常是由于字符串格式和URL不符導(dǎo)致的,與網(wǎng)址是否存在無關(guān)。URL的toString方法返回字符串,無論網(wǎng)址是否存在。
8、what is the result of the following code?
enum AccountType
{
SAVING, FIXED, CURRENT;
private AccountType()
{
System.out.println(“It is a account type”);
}
}
class EnumOne
{
public static void main(String[]args)
{
System.out.println(AccountType.FIXED);
}
}
正確答案: C
Compiles fine and output is prints”It is a account type”once followed by”FIXED”
Compiles fine and output is prints”It is a account type”twice followed by”FIXED”
Compiles fine and output is prints”It is a account type”thrice followed by”FIXED”
Compiles fine and output is prints”It is a account type”four times followed by”FIXED”
Compilation fails
翻譯:
編譯良好,輸出是打印“它是一個(gè)帳戶類型”,后面跟著“FIXED”
編譯良好,輸出打印" It is a account type “兩次,后面跟著” FIXED "
編譯良好,輸出是打印“這是一個(gè)帳戶類型”三次,然后是“FIXED”
編譯良好,輸出是打印“這是一個(gè)帳戶類型”四次,然后是“FIXED”
編譯失敗
9、下面關(guān)于volatile的功能說法正確的是哪個(gè)
正確答案: B C
原子性
有序性
可見性
持久性
題解:
synchronized保證三大性,原子性,有序性,可見性,volatile保證有序性,可見性,不能保證原子性
10、下面哪些類可以被繼承? Java.lang.Thread、java.lang.Number、java.lang.Double、java.lang.Math、
java.lang.ClassLoader
正確答案: A B E
Thread
Number
Double
Math
ClassLoader
題解:
A:Thread可以被繼承,用于創(chuàng)建新的線程
B:Number類可以被繼承,Integer,F(xiàn)loat,Double等都繼承自Number類
C:Double類的聲明為
public final class Doubleextends Numberimplements Comparable<Double>
final生明的類不能被繼承
D:Math類的聲明為
public final class Mathextends Object
不能被繼承
E:ClassLoader可以被繼承,用戶可以自定義類加載器
答案匯總:
1、正確答案: D
2、正確答案: A
3、正確答案: A
4、正確答案: B
5、正確答案: A
6、正確答案: C
7、正確答案: A
8、正確答案: C
9、正確答案: B C
10、正確答案:A B E
總結(jié)
本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
Java8?LocalDateTime時(shí)間日期類使用實(shí)例詳解
本文從 LocalDateTime 類的創(chuàng)建、轉(zhuǎn)換、格式化與解析、計(jì)算與比較以及其他操作幾個(gè)方面詳細(xì)介紹了 LocalDateTime 類在 Java 8 中的使用,感興趣的朋友跟隨小編一起看看吧2024-03-03Jmeter對接口測試入?yún)?shí)現(xiàn)MD5加密
這篇文章主要介紹了Jmeter對接口測試入?yún)?shí)現(xiàn)MD5加密,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08Java使用FileInputStream流讀取文件示例詳解
這篇文章主要介紹了Java使用FileInputStream流讀取文件示例詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07idea與eclipse項(xiàng)目相互導(dǎo)入的過程(圖文教程)
這篇文章主要介紹了idea與eclipse項(xiàng)目相互導(dǎo)入的過程,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03spring boot使用properties定義短信模板的方法教程
這篇文章主要給大家介紹了關(guān)于spring boot使用properties定義短信模板的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2018-01-01Java使用BigDecimal進(jìn)行運(yùn)算封裝的實(shí)際案例
今天小編就為大家分享一篇關(guān)于Java使用BigDecimal進(jìn)行運(yùn)算封裝的實(shí)際案例,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2018-12-12Mybatis批量插入大量數(shù)據(jù)的最優(yōu)方式總結(jié)
批量插入功能是我們?nèi)粘9ぷ髦斜容^常見的業(yè)務(wù)功能之一,下面這篇文章主要給大家總結(jié)介紹了關(guān)于Mybatis批量插入大量數(shù)據(jù)的幾種最優(yōu)方式,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-03-03