Java日常練習(xí)題,每天進(jìn)步一點(diǎn)點(diǎn)(33)
承蒙各位厚愛(ài),我們一起每天進(jìn)步一點(diǎn)點(diǎn)!(鼠標(biāo)選中空白處查看答案)
1、如果一個(gè)方法或變量是"private"訪問(wèn)級(jí)別,那么它的訪問(wèn)范圍是:
正確答案: D
在當(dāng)前類,或者子類中
在當(dāng)前類或者它的父類中
在當(dāng)前類,或者它所有的父類中
在當(dāng)前類中
題解:
private 修飾的方法和變量只能在當(dāng)前類中訪問(wèn)
不帶任何修飾符,只能在同一包內(nèi)的類中,被訪問(wèn)
protected 只能在子類或者當(dāng)前類中被訪問(wèn)
public 所有類中可以訪問(wèn)
2、代碼將打?。?br />
System.out.println(10%3*2);
正確答案: B
1
2
4
6
題解:
%和*是同一個(gè)優(yōu)先級(jí),從左到右運(yùn)算
3、下面關(guān)于hibernate核心接口說(shuō)明錯(cuò)誤的是?
正確答案: B
Configuration 接口:配置Hibernate,根據(jù)其啟動(dòng)hibernate,創(chuàng)建SessionFactory 對(duì)象
SessionFactory 接口:負(fù)責(zé)保存、更新、刪除、加載和查詢對(duì)象,是線程不安全的,避免多個(gè)線程共享同一個(gè)session,是輕量級(jí)、一級(jí)緩存
Query 和Criteria 接口:執(zhí)行數(shù)據(jù)庫(kù)的查詢
Transaction 接口:管理事務(wù)
題解:
B選項(xiàng)中應(yīng)該是Session接口而不是SessionFactory接口
4、以下哪項(xiàng)陳述是正確的?
正確答案: E
垃圾回收線程的優(yōu)先級(jí)很高,以保證不再 使用的內(nèi)存將被及時(shí)回收
垃圾收集允許程序開(kāi)發(fā)者明確指定釋放 哪一個(gè)對(duì)象
垃圾回收機(jī)制保證了JAVA程序不會(huì)出現(xiàn) 內(nèi)存溢出
進(jìn)入”Dead”狀態(tài)的線程將被垃圾回收器回收
以上都不對(duì)
題解:
A: 垃圾回收在jvm中優(yōu)先級(jí)相當(dāng)相當(dāng)?shù)汀?br /> B:垃圾收集器(GC)程序開(kāi)發(fā)者只能推薦JVM進(jìn)行回收,但何時(shí)回收,回收哪些,程序員不能控制。
C:垃圾回收機(jī)制只是回收不再使用的JVM內(nèi)存,如果程序有嚴(yán)重BUG,照樣內(nèi)存溢出。
D:進(jìn)入DEAD的線程,它還可以恢復(fù),GC不會(huì)回收
5、在jdk1.5之后,下列 java 程序輸出結(jié)果為_(kāi)_____。
int i=0;
Integer j = new Integer(0);
System.out.println(i==j);
System.out.println(j.equals(i));
正確答案: B
true,false
true,true
false,true
false,false
對(duì)于不同的環(huán)境結(jié)果不同
程序無(wú)法執(zhí)行
題解:
1、基本型和基本型封裝型進(jìn)行“==”運(yùn)算符的比較,基本型封裝型將會(huì)自動(dòng)拆箱變?yōu)榛拘秃笤龠M(jìn)行比較,因此Integer(0)會(huì)自動(dòng)拆箱為int類型再進(jìn)行比較,顯然返回true;
2、兩個(gè)Integer類型進(jìn)行“==”比較,如果其值在-128至127,那么返回true,否則返回false, 這跟Integer.valueOf()的緩沖對(duì)象有關(guān),這里不進(jìn)行贅述。
3、兩個(gè)基本型的封裝型進(jìn)行equals()比較,首先equals()會(huì)比較類型,如果類型相同,則繼續(xù)比較值,如果值也相同,返回true
4、基本型封裝類型調(diào)用equals(),但是參數(shù)是基本類型,這時(shí)候,先會(huì)進(jìn)行自動(dòng)裝箱,基本型轉(zhuǎn)換為其封裝類型,再進(jìn)行3中的比較。
6、關(guān)于 訪問(wèn)權(quán)限說(shuō)法正確 的是 ? ( )
正確答案: D
外部類定義前面可以修飾public,protected和private
局部?jī)?nèi)部類前面可以修飾public,protected和private
匿名內(nèi)部類前面可以修飾public,protected和private
以上說(shuō)法都不正確
題解:
對(duì)于外部類來(lái)說(shuō),只有兩種修飾,public和默認(rèn)(default),因?yàn)橥獠款惙旁诎?,只有兩種可能,包可見(jiàn)和包不可見(jiàn)。
對(duì)于內(nèi)部類來(lái)說(shuō),可以有所有的修飾,因?yàn)閮?nèi)部類放在外部類中,與成員變量的地位一致,所以有四種可能。
這道題是不嚴(yán)謹(jǐn)?shù)念},首先B選項(xiàng)說(shuō)的是內(nèi)部類,內(nèi)部類分為成員內(nèi)部類、局部(方法)內(nèi)部類、靜態(tài)內(nèi)部類、匿名內(nèi)部類。毫無(wú)疑問(wèn)局部?jī)?nèi)部類屬于內(nèi)部類,如果B選項(xiàng)正確,那么C選項(xiàng)也應(yīng)該是正確的。所以應(yīng)該是選D
在Java中,可以將一個(gè)類定義在另一個(gè)類里面或者一個(gè)方法里邊,這樣的類稱為內(nèi)部類,廣泛意義上的內(nèi)部類一般包括四種:成員內(nèi)部類,局部?jī)?nèi)部類,匿名內(nèi)部類,靜態(tài)內(nèi)部類 。
1.成員內(nèi)部類
(1)該類像是外部類的一個(gè)成員,可以無(wú)條件的訪問(wèn)外部類的所有成員屬性和成員方法(包括private成員和靜態(tài)成員);
(2)成員內(nèi)部類擁有與外部類同名的成員變量時(shí),會(huì)發(fā)生隱藏現(xiàn)象,即默認(rèn)情況下訪問(wèn)的是成員內(nèi)部類中的成員。如果要訪問(wèn)外部類中的成員,需要以下形式訪問(wèn):【外部類.this.成員變量 或 外部類.this.成員方法】;
(3)在外部類中如果要訪問(wèn)成員內(nèi)部類的成員,必須先創(chuàng)建一個(gè)成員內(nèi)部類的對(duì)象,再通過(guò)指向這個(gè)對(duì)象的引用來(lái)訪問(wèn);
(4)成員內(nèi)部類是依附外部類而存在的,也就是說(shuō),如果要?jiǎng)?chuàng)建成員內(nèi)部類的對(duì)象,前提是必須存在一個(gè)外部類的對(duì)象;
(5)內(nèi)部類可以擁有private訪問(wèn)權(quán)限、protected訪問(wèn)權(quán)限、public訪問(wèn)權(quán)限及包訪問(wèn)權(quán)限。如果成員內(nèi)部類用private修飾,則只能在外部類的內(nèi)部訪問(wèn);如果用public修飾,則任何地方都能訪問(wèn);如果用protected修飾,則只能在同一個(gè)包下或者繼承外部類的情況下訪問(wèn);如果是默認(rèn)訪問(wèn)權(quán)限,則只能在同一個(gè)包下訪問(wèn)。外部類只能被public和包訪問(wèn)兩種權(quán)限修飾。
2.局部?jī)?nèi)部類
(1)局部?jī)?nèi)部類是定義在一個(gè)方法或者一個(gè)作用域里面的類,它和成員內(nèi)部類的區(qū)別在于局部?jī)?nèi)部類的訪問(wèn)僅限于方法內(nèi)或者該作用域內(nèi);
(2)局部?jī)?nèi)部類就像是方法里面的一個(gè)局部變量一樣,是不能有public、protected、private以及static修飾符的。
3.匿名內(nèi)部類
(1)一般使用匿名內(nèi)部類的方法來(lái)編寫(xiě)事件監(jiān)聽(tīng)代碼;
(2)匿名內(nèi)部類是不能有訪問(wèn)修飾符和static修飾符的;
(3)匿名內(nèi)部類是唯一一種沒(méi)有構(gòu)造器的類;
(4)匿名內(nèi)部類用于繼承其他類或是實(shí)現(xiàn)接口,并不需要增加額外的方法,只是對(duì)繼承方法的實(shí)現(xiàn)或是重寫(xiě)。
4.內(nèi)部靜態(tài)類
(1)靜態(tài)內(nèi)部類是不需要依賴于外部類的,這點(diǎn)和類的靜態(tài)成員屬性有點(diǎn)類似;
(2)不能使用外部類的非static成員變量或者方法。
7、下面哪個(gè)方法與Applet的顯示無(wú)關(guān)?
正確答案: A
draw
paint
repaint
update
題解:
這題,應(yīng)該選draw。
Applet顯示相關(guān)的方法主要有3個(gè)。
1.paint(Graphicsg)方法,具體執(zhí)行Applet的繪制。
2.update(Graphicsg)()方法,主要用于更新Applet的顯示。
3.repaint()方法,主要用于Applet的重新顯示,它調(diào)用update()方法實(shí)現(xiàn)對(duì)Applet的更新。
而draw()方法與顯示無(wú)關(guān),故選A draw
8、以下哪幾種是java的基本數(shù)據(jù)類型。
正確答案: B C
String
int
boolean
Double
題解:
java四類八種基本數(shù)據(jù)類型:
1、整型 byte,short,int,long
2、浮點(diǎn)型 float,double
3、邏輯型 boolean
4、字符型 char
9、下列不是 Java 關(guān)鍵字的是 ( )
正確答案: B D
abstract
false
native
sizeof
題解:
Java有:
148個(gè)關(guān)鍵字:abstract、assert、boolean、break、byte、case、catch、char、class、continue、default、do、double、else、enum、extends、final、finally、float、for、if、implements、import、int、interface、instanceof、long、native、new、package、private、protected、public、return、short、static、strictfp、super、switch、synchronized、this、throw、throws、transient、try、void、volatile、while。
2)2個(gè)保留字(現(xiàn)在沒(méi)用以后可能用到作為關(guān)鍵字):goto、const。
3)3個(gè)特殊直接量:true、false、null。
10、下面有關(guān)java的引用類型,說(shuō)法正確的有?
正確答案: A B C D
對(duì)于一個(gè)對(duì)象來(lái)說(shuō),只要有強(qiáng)引用的存在,它就會(huì)一直存在于內(nèi)存中
如果一個(gè)對(duì)象僅持有虛引用,那么它就和沒(méi)有任何引用一樣,在任何時(shí)候都可能被垃圾回收器回收。
如果一個(gè)對(duì)象只具有軟引用,則內(nèi)存空間足夠,垃圾回收器就不會(huì)回收它;如果內(nèi)存空間不足了,就會(huì)回收這些對(duì)象的內(nèi)存
一旦發(fā)現(xiàn)了只具有弱引用的對(duì)象,不管當(dāng)前內(nèi)存空間足夠與否,都會(huì)回收它的空間
題解:
1、強(qiáng)引用:一個(gè)對(duì)象賦給一個(gè)引用就是強(qiáng)引用,比如new一個(gè)對(duì)象,一個(gè)對(duì)象被賦值一個(gè)對(duì)象。
2、軟引用:用SoftReference類實(shí)現(xiàn),一般不會(huì)輕易回收,只有內(nèi)存不夠才會(huì)回收。
3、弱引用:用WeekReference類實(shí)現(xiàn),一旦垃圾回收已啟動(dòng),就會(huì)回收。
4、虛引用:不能單獨(dú)存在,必須和引用隊(duì)列聯(lián)合使用。主要作用是跟蹤對(duì)象被回收的狀態(tài)。
答案匯總:
1、正確答案: D
2、正確答案: B
3、正確答案: B
4、正確答案: E
5、正確答案: B
6、正確答案: D
7、正確答案: A
8、正確答案: B C
9、正確答案: B D
10、正確答案: A B C D
總結(jié)
本篇文章就到這里了,希望能給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
詳談hibernate,jpa與spring?data?jpa三者之間的關(guān)系
這篇文章主要介紹了hibernate,jpa與spring?data?jpa三者之間的關(guān)系,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11springboot整合企微webhook機(jī)器人發(fā)送消息提醒
這篇文章主要為大家介紹了springboot整合企微webhook機(jī)器人發(fā)送消息提醒,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-12-12Spring開(kāi)發(fā)核心之AOP的實(shí)現(xiàn)與切入點(diǎn)持久化
面向?qū)ο缶幊淌且环N編程方式,此編程方式的落地需要使用“類”和 “對(duì)象”來(lái)實(shí)現(xiàn),所以,面向?qū)ο缶幊唐鋵?shí)就是對(duì) “類”和“對(duì)象” 的使用,面向切面編程,簡(jiǎn)單的說(shuō),就是動(dòng)態(tài)地將代碼切入到類的指定方法、指定位置上的編程思想就是面向切面的編程2022-10-10詳細(xì)分析Java中String、StringBuffer、StringBuilder類的性能
在Java中,String類和StringBuffer類以及StringBuilder類都能用于創(chuàng)建字符串對(duì)象,而在分別操作這些對(duì)象時(shí)我們會(huì)發(fā)現(xiàn)JVM執(zhí)行它們的性能并不相同,下面我們就來(lái)詳細(xì)分析Java中String、StringBuffer、StringBuilder類的性能2016-05-05java實(shí)現(xiàn)圖片轉(zhuǎn)base64字符串 java實(shí)現(xiàn)base64字符串轉(zhuǎn)圖片
這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)圖片轉(zhuǎn)base64字符串,java實(shí)現(xiàn)base64字符串轉(zhuǎn)圖片,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-02-02Java中的SpringAOP、代理模式、常用AspectJ注解詳解
這篇文章主要介紹了Java中的SpringAOP、代理模式、常用AspectJ注解詳解,Spring提供了面向切面編程的豐富支持,允許通過(guò)分離應(yīng)用的業(yè)務(wù)邏輯與系統(tǒng)級(jí)服務(wù),例如審計(jì)和事務(wù)管理進(jìn)行內(nèi)聚性的開(kāi)發(fā),需要的朋友可以參考下2023-09-09Spring Eureka 未授權(quán)訪問(wèn)漏洞修復(fù)問(wèn)題小結(jié)
項(xiàng)目組使用的 Spring Boot 比較老,是 1.5.4.RELEASE ,最近被檢測(cè)出 Spring Eureka 未授權(quán)訪問(wèn)漏洞,這篇文章主要介紹了Spring Eureka 未授權(quán)訪問(wèn)漏洞修復(fù)問(wèn)題小結(jié),需要的朋友可以參考下2024-04-04詳解MyBatis?ResultSetHandler?結(jié)果集的解析過(guò)程
這篇文章主要為大家介紹了MyBatis?ResultSetHandler?結(jié)果集的解析過(guò)程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02