欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java日常練習(xí)題,每天進步一點點(4)

 更新時間:2021年07月22日 11:06:39   作者:牛哄哄的柯南  
下面小編就為大家?guī)硪黄狫ava基礎(chǔ)的幾道練習(xí)題(分享)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧,希望可以幫到你

承蒙各位厚愛,我們一起每天進步一點點?。ㄊ髽诉x中空白處查看答案)

1、類 ABC 定義如下:

public class ABC{

public int max( int a, int b) { }

 }

將以下哪個方法插入行 3 是不合法的。( )。

正確答案: B

public float max(float a, float b, float c){ }

public int max (int c, int d){ }

public float max(float a, float b){ }

private int max(int a, int b, int c){ }

題解:
注意是不合法,這題考察重載
細說一下重寫和重載:
這兩個都是多態(tài)的一種表現(xiàn)形式。
重載:
1、 重載是在編譯器通過方法中形參的靜態(tài)類型確定調(diào)用方法版本的過程。
2、 重載是多態(tài)在編譯期的表現(xiàn)形式
3、 重載的判定只有兩個條件(其他的條件都不能作為判定):
1、 方法名一致
2、形參列表不同
重寫:
1、重寫在方法運行時,通過調(diào)用者的實際類型來確定調(diào)用的方法版本。(具體細說,就是子父類中的重寫方法在對應(yīng)的class文件常量池的位置相同,一旦子類沒有重寫,那么子類的實例就會沿著這個位置往上找,直到找到父類的同名方法)
2、重寫只發(fā)生在可見的實例方法中:
1、靜態(tài)方法不存在重寫,形式上的重寫只能說是隱藏。
2、私有方法也不存在重寫,父類中private的方法,子類中就算定義了,就是相當(dāng)于一個新的方法。
3、靜態(tài)方法和實例方法不存在相互重寫。
3、重寫滿足一個規(guī)則:兩同兩小一大
1、兩同:方法名和形參列表一致
2、兩?。褐貙懛椒ǖ姆祷刂担ㄒ妙愋停┖蛼伋霎惓?,要和被重寫方法的返回值(引用類型)和拋出異常相同或者是其子類。注意,一旦返回值是基本數(shù)據(jù)類型,那么重寫方法和被重寫方法必須相同,且不存在自動拆裝箱的問題。
3、一大:重寫方法的訪問修飾符大于等于被重寫方法的訪問修飾符。
B選項方法名、形參列表和返回值類型與題目完全一樣,故既不是重寫也不是重載

2、后端獲取數(shù)據(jù),向前端輸出過程中,以下描述正確的是

正確答案: D

對于前端過濾過的參數(shù),屬于可信數(shù)據(jù),可以直接輸出到前端頁面

對于從數(shù)據(jù)庫獲得的數(shù)據(jù),屬于可信數(shù)據(jù),可以直接輸出到前端頁面

對于從用戶上傳的Excel等文件解析出的數(shù)據(jù),屬于可信數(shù)據(jù),可以直接輸出到前端頁面

其它選項都不屬于可信數(shù)據(jù),輸出前應(yīng)該采用信息安全部發(fā)布的XSSFilter做進行相應(yīng)編碼

題解:
后端獲取數(shù)據(jù),向前端輸出的過程中,輸出前應(yīng)該采用信息安全部發(fā)布的XSSFilter進行相應(yīng)編碼。

3、在異常處理中,以下描述不正確的有

正確答案: D

try塊不可以省略

可以使用多重catch塊

finally塊可以省略

catch塊和finally塊可以同時省略

題解:
選D 假如try中有異常拋出,則會去執(zhí)行catch塊,再去執(zhí)行finally塊;假如沒有catch 塊,可以直接執(zhí)行finally 塊,方法就以拋出異常的方式結(jié)束,而finally 后的內(nèi)容也不會被執(zhí)行,所以catch 和 finally 不能同時省略。

4、如果一個接口Cup有個方法use(),有個類SmallCup實現(xiàn)接口Cup,則在類SmallCup中正確的是? ( )

正確答案: C

void use() { …}

protected void use() { …}

public void use() { …}

以上語句都可以用在類SmallCup中

題解:
1.題目說了實現(xiàn),那么接口中的方法是抽象方法
2.接口中的抽象方法是public修飾
3.實現(xiàn)就意味著重寫,重寫的方法的權(quán)限不能小于被重寫的方法
4.而最大的權(quán)限是public,即public<=重寫的方法的權(quán)限<=public,即重寫的方法的權(quán)限只能為public

5、下面的程序?qū)泶蛴∈裁?#63;()

public class TestIncr {

public static void main(String args[]) {

int i = 0;

i = i++ + i;

System.out.println(“I =” +i);

}

}

正確答案: A

I = 1

I = 2

I = 3

編譯出錯

題解:
首先,在 i = i++ + i 中,先執(zhí)行的是 i++ ,此時式子可為 i = 0 + i
然后再進行后一步 +i ,因為前面執(zhí)行了 i++ ,所以這個 i 的值已經(jīng) +1 了
那么最后這個式子就是 i = 0 + 1

6、執(zhí)行以下程序后的輸出結(jié)果是()

public class Test {

public static void main(String[] args) {

StringBuffer a = new StringBuffer(“A”);

StringBuffer b = new StringBuffer(“B”);

operator(a, b);

System.out.println(a + “,” + b);

}

public static void operator(StringBuffer x, StringBuffer y) {

x.append(y); y = x;

}

}

正確答案: D

A,A

A,B

B,B

AB,B

題解:
a和x是同個地址,b和y是同個地址,然后執(zhí)行x.append(y)就把y的值放在x的地址里面此時a地址和x是同一個所以a就是AB了,接著執(zhí)行y=x是把x的地址給y,這時候axy屬于同一個地址。所以y=x 只是改變了y的地址沒改變b的地址,所以b還是B

7、java語言的下面幾種數(shù)組復(fù)制方法中,哪個效率最高?

正確答案: B

for 循環(huán)逐一復(fù)制

System.arraycopy

Array.copyOf

使用clone方法

題解:
從速度上看:System.arraycopy > clone > Arrays.copyOf > for
System.arraycopy():native方法+JVM手寫函數(shù),在JVM里預(yù)寫好速度最快
clone():native方法,但并未手寫,需要JNI轉(zhuǎn)換,速度其次
Arrays.copyof():本質(zhì)是調(diào)用1的方法
for():全是深復(fù)制,并且不是封裝方法,最慢情有可原

8、有關(guān)會話跟蹤技術(shù)描述正確的是()

正確答案: A B C

Cookie是Web服務(wù)器發(fā)送給客戶端的一小段信息,客戶端請求時,可以讀取該信息發(fā)送到服務(wù)器端

關(guān)閉瀏覽器意味著臨時會話ID丟失,但所有與原會話關(guān)聯(lián)的會話數(shù)據(jù)仍保留在服務(wù)器上,直至?xí)掃^期

在禁用Cookie時可以使用URL重寫技術(shù)跟蹤會話

隱藏表單域?qū)⒆侄翁砑拥紿TML表單并在客戶端瀏覽器中顯示

題解:
D:隱藏域在頁面中對于用戶(瀏覽器)是不可見的,在表單中插入隱藏域的目的在于收集或發(fā)送信息,以利于被處理表單的程序所使用。瀏覽者單擊發(fā)送按鈕發(fā)送表單的時候,隱藏域的信息也被一起發(fā)送到服務(wù)器。

9、關(guān)于Java內(nèi)存區(qū)域下列說法不正確的有哪些

正確答案: B C

程序計數(shù)器是一塊較小的內(nèi)存空間,它的作用可以看做是當(dāng)前線程所執(zhí)行的字節(jié)碼的信號指示器,每個線程都需要一個獨立的

程序計數(shù)器.

Java虛擬機棧描述的是java方法執(zhí)行的內(nèi)存模型,每個方法被執(zhí)行的時候都會創(chuàng)建一個棧幀,用于存儲局部變量表、類信息、

動態(tài)鏈接等信息

Java堆是java虛擬機所管理的內(nèi)存中最大的一塊,每個線程都擁有一塊內(nèi)存區(qū)域,所有的對象實例以及數(shù)組都在這里分配內(nèi)存。

方法區(qū)是各個線程共享的內(nèi)存區(qū)域,它用于存儲已經(jīng)被虛擬機加載的常量、即時編譯器編譯后的代碼、靜態(tài)變量等數(shù)據(jù)。

題解:
B.類信息不是存儲在java虛擬機棧中,而是存儲在方法區(qū)中;
C.java堆是被所有線程共享的一塊內(nèi)存區(qū)域,而不是每個線程都擁有一塊內(nèi)存區(qū)域。
 
A.程序計數(shù)器是一塊較小的內(nèi)存空間,它的作用可以看做是當(dāng)前線程所執(zhí)行的字節(jié)碼的信號指示器(偏移地址),Java編譯過程中產(chǎn)生的字節(jié)碼有點類似編譯原理的指令,程序計數(shù)器的內(nèi)存空間存儲的是當(dāng)前執(zhí)行的字節(jié)碼的偏移地址,每一個線程都有一個獨立的程序計數(shù)器(程序計數(shù)器的內(nèi)存空間是線程私有的),因為當(dāng)執(zhí)行語句時,改變的是程序計數(shù)器的內(nèi)存空間,因此它不會發(fā)生內(nèi)存溢出 ,并且程序計數(shù)器是jvm虛擬機規(guī)范中唯一一個沒有規(guī)定 OutOfMemoryError 異常 的區(qū)域;
B.java虛擬機棧:線程私有,生命周期和線程一致。描述的是 Java 方法執(zhí)行的內(nèi)存模型:每個方法在執(zhí)行時都會床創(chuàng)建一個棧幀(Stack Frame)用于存儲局部變量表、操作數(shù)棧、動態(tài)鏈接、方法出口等信息。每一個方法從調(diào)用直至執(zhí)行結(jié)束,就對應(yīng)著一個棧幀從虛擬機棧中入棧到出棧的過程。 沒有類信息,類信息是在方法區(qū)中
C.java堆:對于絕大多數(shù)應(yīng)用來說,這塊區(qū)域是 JVM 所管理的內(nèi)存中最大的一塊。線程共享,主要是存放對象實例和數(shù)組
D.方法區(qū):屬于共享內(nèi)存區(qū)域,存儲已被虛擬機加載的類信息、常量、靜態(tài)變量、即時編譯器編譯后的代碼等數(shù)據(jù)。

10、下面的Java賦值語句哪些是有錯誤的 ()

正確答案: B C F

A:int i =1000;

B:float f = 45.0;

C:char s = ‘\u0639'

D:Object o = ‘f';

E:String s = “hello,world\0”;

F:Double d = 100;

題解:
A:沒毛病
B:小數(shù)默認雙精度(double)的,賦值給浮點型(float)屬下轉(zhuǎn)型,會造成精度損失,需要強制類型轉(zhuǎn)換float f =(float)45.0; 或者寫成float f =45.0F;。
C:沒分號啊
D:可以把任何一種數(shù)據(jù)類型的變量賦給Object類型的變量,因為java所有類默認繼承Object,基本數(shù)據(jù)類型賦值給Object會先裝箱,裝箱之后就是Object的子類了;
E:沒毛病,字符串中的\0被編譯為\u0000,表示一個空字符。
F:注意:double d=100,這樣沒毛病,但是題中是Double啊,會自動裝箱, 裝箱過程中調(diào)用的是Double類的valueOf( double d )方法, 而這里是100為int型, 所以編譯會“cannot convert from int to Double”

答案匯總:

1、正確答案: B

2、正確答案: D

3、正確答案: D

4、正確答案: C

5、正確答案: A

6、正確答案: D

7、正確答案: B

8、正確答案: A B C

9、正確答案: B C

10、正確答案: B C F

總結(jié)

本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • Java多線程中sleep和wait區(qū)別

    Java多線程中sleep和wait區(qū)別

    本文主要介紹了Java多線程中sleep和wait區(qū)別,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • Java如何將若干時間區(qū)間進行合并的方法步驟

    Java如何將若干時間區(qū)間進行合并的方法步驟

    這篇文章主要介紹了Java如何將若干時間區(qū)間進行合并的方法步驟,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • Java 數(shù)據(jù)結(jié)構(gòu)線性表之順序存儲詳解原理

    Java 數(shù)據(jù)結(jié)構(gòu)線性表之順序存儲詳解原理

    線性表的順序存儲是指用一組地址連續(xù)的存儲單元依次存儲線性表中的各個元素、使得線性表中在邏輯結(jié)構(gòu)上相鄰的數(shù)據(jù)元素存儲在相鄰的物理存儲單元中,即通過數(shù)據(jù)元素物理存儲的相鄰關(guān)系來反映數(shù)據(jù)元素之間邏輯上的相鄰關(guān)系
    2021-10-10
  • 使用java實現(xiàn)Xmodem協(xié)議

    使用java實現(xiàn)Xmodem協(xié)議

    這篇文章主要介紹了使用java實現(xiàn)Xmodem協(xié)議的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • 詳解基于Spring Cloud幾行配置完成單點登錄開發(fā)

    詳解基于Spring Cloud幾行配置完成單點登錄開發(fā)

    這篇文章主要介紹了詳解基于Spring Cloud幾行配置完成單點登錄開發(fā),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-02-02
  • Java中的 FilterInputStream簡介_動力節(jié)點Java學(xué)院整理

    Java中的 FilterInputStream簡介_動力節(jié)點Java學(xué)院整理

    FilterInputStream 的作用是用來“封裝其它的輸入流,并為它們提供額外的功能”。接下來通過本文給大家分享Java中的 FilterInputStream簡介,感興趣的朋友一起學(xué)習(xí)吧
    2017-05-05
  • spring boot springMVC擴展配置實現(xiàn)解析

    spring boot springMVC擴展配置實現(xiàn)解析

    這篇文章主要介紹了spring boot springMVC擴展配置實現(xiàn)解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-08-08
  • Java配置JDK開發(fā)環(huán)境及環(huán)境變量

    Java配置JDK開發(fā)環(huán)境及環(huán)境變量

    這篇文章主要為大家詳細介紹了Java配置JDK開發(fā)環(huán)境及環(huán)境變量,文中安裝步驟介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • 詳解spring cloud hystrix請求緩存(request cache)

    詳解spring cloud hystrix請求緩存(request cache)

    這篇文章主要介紹了詳解spring cloud hystrix請求緩存(request cache),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • Java中常用修飾符的使用方法匯總

    Java中常用修飾符的使用方法匯總

    下面小編就為大家?guī)硪黄狫ava中常用修飾符的使用方法匯總。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01

最新評論