Java日常練習(xí)題,每天進(jìn)步一點(diǎn)點(diǎn)(25)
承蒙各位厚愛,我們一起每天進(jìn)步一點(diǎn)點(diǎn)?。ㄊ髽?biāo)選中空白處查看答案)
1、下面程序段執(zhí)行后b的值是()。
Integer integ =new Integer(9);
boolean b = integ instanceof Object;
正確答案: B
9
true
1
false
題解:
Object是 integ 的父類
2、以下關(guān)于繼承的敘述正確的是
正確答案: A
在Java中類只允許單一繼承
在Java中一個(gè)類不能同時(shí)繼承一個(gè)類和實(shí)現(xiàn)一個(gè)接口
在Java中接口只允許單一繼承
在Java中一個(gè)類只能實(shí)現(xiàn)一個(gè)接口
題解:
類支持單繼承,接口支持多繼承
3、下面關(guān)于依賴注入(DI)的說(shuō)法不正確的是()
正確答案: A
只有通過(guò)Spring才能實(shí)現(xiàn)依賴注入(DI)
依賴注入的主要目的是解耦合
常見的依賴注入方式有Setter和構(gòu)造方法
題解:
依賴注入是一種思想,或者說(shuō)是一種設(shè)計(jì)模式,在java中是通過(guò)反射機(jī)制實(shí)現(xiàn),與具體框架無(wú)關(guān)。
4、下列整型常量 i 的定義中,正確的是( )
正確答案: C
final i;
static int i;
static final int i=234;
final float i=3.14f;
題解:
java中final修飾的變量有三種:靜態(tài)變量、實(shí)例變量和局部變量,分別表示三種類型的常量。int關(guān)鍵字修飾整型類型。static修飾靜態(tài)變量,即當(dāng)利用這個(gè)關(guān)鍵字來(lái)修飾一個(gè)變量的時(shí)候,在創(chuàng)建對(duì)象之前就會(huì)為這個(gè)變量在內(nèi)存中創(chuàng)建一個(gè)存儲(chǔ)空間。以后創(chuàng)建對(duì)對(duì)象如果需要用到這個(gè)靜態(tài)變量,那么就會(huì)共享這一個(gè)變量的存儲(chǔ)空間。
A:缺少必要的整型類型聲明
B:缺少常量關(guān)鍵字final
D:定義一個(gè)浮點(diǎn)常量
5、下面關(guān)于Java package的描述,哪個(gè)是正確的:()
I. 包不提供將所有類名分區(qū)為更易管理的塊的機(jī)制.
II. 包提供可見性控制機(jī)制.
III. 包的一個(gè)重要屬性是包內(nèi)定義的所有類都可以通過(guò)該包外的代碼訪問(wèn).
IV. 聲明為包的一部分的類的.class文件可以存儲(chǔ)在多個(gè)目錄中.
正確答案: B
只有I
只有II
只有III
只有IV
題解:
為了更好地組織類,Java 提供了包機(jī)制,用于區(qū)別類名的命名空間。
包的作用
1、把功能相似或相關(guān)的類或接口組織在同一個(gè)包中,方便類的查找和使用。
2、如同文件夾一樣,包也采用了樹形目錄的存儲(chǔ)方式。同一個(gè)包中的類名字是不同的,不同的包中的類的名字是可以相同的,當(dāng)同時(shí)調(diào)用兩個(gè)不同包中相同類名的類時(shí),應(yīng)該加上包名加以區(qū)別。因此,包可以避免名字沖突。
3、包也限定了訪問(wèn)權(quán)限,擁有包訪問(wèn)權(quán)限的類才能訪問(wèn)某個(gè)包中的類。
Java 使用包(package)這種機(jī)制是為了防止命名沖突,訪問(wèn)控制,提供搜索和定位類(class)、接口、枚舉(enumerations)和注釋(annotation)等。
6、下面這段程序的輸出結(jié)果是()
public class Main {
public static void main(String[] args) {
split(12);
}
public static int split(int number) {
if (number > 1) {
if (number % 2 != 0) System.out.print(split((number + 1) / 2));
System.out.print(split(number / 2));
}
return number;
}
}
正確答案: A
12136
63121
61213
11236
題解:
考察方法進(jìn)棧與出棧的順序。先進(jìn)后出
有個(gè)知識(shí)點(diǎn),方法在出棧的時(shí)候,執(zhí)行的是return語(yǔ)句。因?yàn)槌鰲>鸵馕吨椒ńY(jié)束并消費(fèi),如果沒有return語(yǔ)句,那么方法出棧的時(shí)候什么都不執(zhí)行,就直接銷毀。
1.執(zhí)行split(12)時(shí),執(zhí)行代碼System.out.print(split(number / 2))
split(12/2)進(jìn)棧,此時(shí)number=6;
2.執(zhí)行split(6)時(shí),執(zhí)行代碼System.out.print(split(number / 2))
split(6/2)進(jìn)棧,此時(shí)number=3;
3.執(zhí)行split(3)時(shí),
第1行 if (number % 2 != 0)
第2行 System.out.print(split((number + 1) / 2));
第3行 System.out.print(split(number / 2));
按照順序執(zhí)行
先執(zhí)行第2行
首先split((3+1)/2)進(jìn)棧,此時(shí)number=2,
再執(zhí)行split(2),那么split(2/2)進(jìn)棧,此時(shí)number=1, 最后return 1,
注意此時(shí)第2行代碼還沒有結(jié)束
此時(shí)
split(2/2)出棧,輸出1;
split((3+1)/2)出棧,輸出2;
第二行代碼結(jié)束,再執(zhí)行第三行,此時(shí)number=3,執(zhí)行System.out.print(split(number / 2))
split(3/2)進(jìn)棧,number=1,return,那么就需要出棧了
split(3/2)出棧,輸出1
split(6/2)出棧,輸出3
split(12/2)出棧,輸出6;
最終結(jié)果12136;
split(number)方法,最終返回的是number這個(gè)值,所以split(n)出棧的輸出結(jié)果就是n
整理:
split(12/2)進(jìn)棧
split(6/2)進(jìn)棧
split((3+1)/2)進(jìn)棧
split(2/2)進(jìn)棧
split(2/2)出棧,輸出1
split((3+1)/2)出棧,輸出2
split(2/2)進(jìn)棧
split(2/2)出棧,輸出1
split(6/2)出棧,輸出3
split(12/2)出棧,輸出6
7、Thread. sleep()是否會(huì)拋出checked exception?
正確答案: A
會(huì)
不會(huì)
題解:
Thread.sleep() 和 Object.wait(),都可以拋出 InterruptedException。這個(gè)異常是不能忽略的,因?yàn)樗且粋€(gè)檢查異常(checked exception)
8、下列哪個(gè)選項(xiàng)是正確計(jì)算42度(角度)的余弦值?
正確答案: C
double d=Math.cos(42)
double d=Math.cosine(42)
double d=Math.cos(Math.toRadians(42))
double d=Math.cos(Math.toDegrees(42))
題解:
Math.cos為計(jì)算弧度的余弦值,Math.toRadians函數(shù)講角度轉(zhuǎn)換為弧度
9、以下描述正確的是
正確答案: B
CallableStatement是PreparedStatement的父接口
PreparedStatement是CallableStatement的父接口
CallableStatement是Statement的父接口
PreparedStatement是Statement的父接口
題解:
public interface CallableStatement extends PreparedStatement
public interface PreparedStatement extends Statement
10、ResultSet中記錄行的第一列索引為?
正確答案: C
-1
0
1
以上都不是
題解:
ResultSet跟普通的數(shù)組不同,索引從1開始而不是從0開始
答案匯總:
1、正確答案: B
2、正確答案: A
3、正確答案: A
4、正確答案: C
5、正確答案: B
6、正確答案: A
7、正確答案: A
8、正確答案: C
9、正確答案: B
10、正確答案: C
總結(jié)
本篇文章就到這里了,希望能給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
Hadoop使用hdfs指令查看hdfs目錄的根目錄顯示被拒的原因及解決方案
這篇文章主要介紹了Hadoop使用hdfs指令查看hdfs目錄的根目錄顯示被拒的原因及解決方案,分布式部署hadoop,服務(wù)機(jī)只有namenode節(jié)點(diǎn),主機(jī)包含其他所有節(jié)點(diǎn),本文給大家介紹的非常詳細(xì),需要的朋友可以參考下2023-10-10解決IDEA springboot"spring-boot-maven-plugin"報(bào)紅問(wèn)題
這篇文章主要介紹了解決IDEA springboot"spring-boot-maven-plugin"報(bào)紅問(wèn)題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04IDEA安裝Activiti插件并解決亂碼問(wèn)題(推薦)
這篇文章主要介紹了IDEA安裝Activiti插件并解決亂碼問(wèn)題,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-06-06SpringBoot Shiro授權(quán)實(shí)現(xiàn)過(guò)程解析
這篇文章主要介紹了SpringBoot Shiro授權(quán)實(shí)現(xiàn)過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-11-11Java 高并發(fā)二:多線程基礎(chǔ)詳細(xì)介紹
本文主要介紹Java 高并發(fā)多線程的知識(shí),這里整理詳細(xì)的資料來(lái)解釋線程的知識(shí),有需要的學(xué)習(xí)高并發(fā)的朋友可以參考下2016-09-09crawler4j抓取頁(yè)面使用jsoup解析html時(shí)的解決方法
crawler4j對(duì)response沒有指定編碼的頁(yè)面,解析成亂碼,很讓人煩惱,下面給出解決方法,需要的朋友可以參考下2014-04-04SpringBoot整合weixin-java-pay實(shí)現(xiàn)微信小程序支付的示例代碼
微信小程序支付是常見的一種功能,本文主要介紹了SpringBoot整合weixin-java-pay實(shí)現(xiàn)微信小程序支付的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-05-05Java實(shí)現(xiàn)排球比賽計(jì)分系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)排球比賽計(jì)分系統(tǒng),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06idea 創(chuàng)建properties配置文件的步驟
這篇文章主要介紹了idea 創(chuàng)建properties配置文件的步驟,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-01-01