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

Java日常練習題,每天進步一點點(62)

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

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

1、Java Application 源程序的主類是指包含有( )方法的類。

正確答案:A

A public static void main方法

B toString方法

C init方法

D actionPerfromed方法

題解:
1、java程序種類: 1.內(nèi)嵌于web文件中,有瀏覽器觀看的applet 2.可獨立運行的application 3.服務器端的servlets
2、 一個類的內(nèi)部可以有多個方法名為main的方法啊,是有定義為 public static void的main方法才是主類吧
3、 已經(jīng)看了解釋

2、如果定義一種表達式結(jié)構(gòu):(+ 6 3)的值為9,(- 6 3)的值為3,( * 6 3)的值為18,( / 6 3)的值為2;那么對于表達式( * (- 16 (* 3 2 2 )) (+ 5 (/ 6 (- 5 3))))輸出的結(jié)果為____。

正確答案:D

A 44

B 40

C 40

D 32

E 24

F 21

題解:
1、 這個和學過數(shù)據(jù)結(jié)構(gòu)沒有太大關系,當然做過這類題的人一瞬間就懂了,我數(shù)據(jù)結(jié)構(gòu)已經(jīng)很多年沒看了。有的人之所以沒看懂,我也是看了好久才明白,是因為沒看懂題目的邏輯關系。下面我來通俗的講一下: 題目中規(guī)定(+6 3)=9何解?其真實含義就是往棧中存了三個值,符號為加,于是6+3就等于9了。以此類推( *6 3)自然就是18了。

3、給出以下代碼

public class TestObj{
public static void main(String args){
Object o=new Object(){
public boolean equals(Object obj){
return true;
}
};
System.out.println(o.equals(“Fred”));
}
}

請給出結(jié)果:()

正確答案:B

A 運行時拋出異常

B true

C Fred

D 第三行編譯錯誤

題解:
1、 這是匿名類 格式是:new 父類/接口 () {定義成員或覆蓋方法} 使用場景:只使用一次時。

4、當編譯并運行下面程序時會發(fā)生什么結(jié)果()

public class Bground extends Thread{
public static void main(String argv){
Bground b = new Bground();
b.run();
}
public void start(){
for(int i=0;i<10;i++){
System.out.println("Value of i = "+i);
}
}
}

正確答案:D

A 編譯錯誤,指明run方法沒有定義

B 運行錯誤,只鞥呢run方法沒有定義

C 編譯通過并輸出0到9

D 編譯通過,但無輸出

題解:
1、選D 對于線程而言,start是讓線程從new變成runnable。run方法才是執(zhí)行體的入口。 但是在Thread中,run方法是個空方法,沒有具體實現(xiàn)。 Bground繼承了Thread,但是沒有重寫run方法,那么調(diào)用run方法肯定是無輸出。

5、對于文件的描述正確的是( )

正確答案:D

A 文本文件是以“.txt”為后綴名的文件,其他后綴名的文件是二進制文件。

B File類是Java中對文件進行讀寫操作的基本類。

C 無論文本文件還是二進制文件,讀到文件末尾都會拋出EOFException異常。

D Java中對于文本文件和二進制文件,都可以當作二進制文件進行操作。

題解:
1、A.文件分為文本文件和二進制文件,計算機只認識二進制,所以實際上都是二進制的不同解釋方式。文本文件是以不同編碼格式顯示的字符,例如Ascii、Unicode等,window中文本文件的后綴名有".txt"
2、".log"
3、各種編程語言的源碼文件等;二進制文件就是用文本文檔打開是看不懂亂碼,只要能用文本打開的文件都可以算是文本文件,只是顯示的結(jié)果不是你想要的,二進制文件只有用特殊的應用才能讀懂的文件,例如".png"
4、".bmp"等,計算機中大部分的文件還是二進制文件。 B.File類是對文件整體或者文件屬性操作的類,例如創(chuàng)建文件、刪除文件、查看文件是否存在等功能,不能操作文件內(nèi)容;文件內(nèi)容是用IO流操作的。 C.當輸入過程中意外到達文件或流的末尾時,拋出EOFException異常
5、正常情況下讀取到文件末尾時,返回一個特殊值表示文件讀取完成,例如read()返回-1表示文件讀取完成。 D.上面A選項已經(jīng)說了,不論是文本文件還是二進制文件,在計算機中都是以二進制形式存儲的,所以都當做二進制文件讀取。
6、 File類是 文件和目錄路徑名的抽象表示形式。
7、 D:正確 B:File類是java中文件和目錄路徑名的抽象表示形式。Java中對文件進行讀寫操作的基本類是IO類。 C:讀到文件末尾不會拋出異常。EOFException:當輸入過程中意外到達文件或流的末尾時,拋出此異常。

6、以下代碼執(zhí)行的結(jié)果顯示是多少( )?

 public class Demo {
  class Super {
    int flag = 1;
    Super() {
      test();
    }
    void test() {
      System.out.println("Super.test() flag=" + flag);
    }
  }
  class Sub extends Super {
    Sub(int i) {
      flag = i;
      System.out.println("Sub.Sub()flag=" + flag);
    }
    void test() {
      System.out.println("Sub.test()flag=" + flag);
    }
  }
  public static void main(String args) {
    new Demo().new Sub(5);
  }
}

正確答案:A

A Sub.test() flag=1

Sub.Sub() flag=5

B Sub.Sub() flag=5

Sub.test() flag=5

C Sub.test() flag=0

Sub.Sub() flag=5

D Super.test() flag=1

Sub.Sub() flag=5

題解:
1、在繼承中代碼的執(zhí)行順序為:1.父類靜態(tài)對象,父類靜態(tài)代碼塊 2.子類靜態(tài)對象,子類靜態(tài)代碼塊 3.父類非靜態(tài)對象,父類非靜態(tài)代碼塊 4.父類構(gòu)造函數(shù) 5.子類非靜態(tài)對象,子類非靜態(tài)代碼塊 6.子類構(gòu)造函數(shù) 對于本題來說:在只想new Sub(5)的時候,父類先初始化了 int flag = 1,然后執(zhí)行父類的構(gòu)造函數(shù)Super(),父類構(gòu)造函數(shù)中執(zhí)行的test()方法,因子類是重寫了test()方法的,因此父類構(gòu)造函數(shù)中的test()方法實際執(zhí)行的是子類的test()方法,所以輸出為Sub.test() flag=1,接著執(zhí)行子類構(gòu)造函數(shù)Sub(5) 將flag賦值為5,因此輸出結(jié)果Sub.Sub() flag=5。最終選擇了A。
3、 1.首先調(diào)用父類構(gòu)造方法,即super() 2.調(diào)用test()方法。 3.由于在子類sub()中重寫了test()方法,所以調(diào)用子類test() 4.輸出Sub.test() flag=1 5.調(diào)用sub的有參構(gòu)造方法 6.輸出Sub.Sub() flag=5 重點在于要時刻記得子類重寫父類方法,調(diào)用時會調(diào)用子類重寫之后的方法 當然,這一切的前提都是 實例化子類對象

7、以下哪幾個是java中的集合類型?

正確答案:ABD

A Vector

B Set

C String

D List

題解:
1、 Java中的集合類型:Vector、Set、List

8、Java 多線程有幾種實現(xiàn)方法?( )

正確答案:AB

A 繼承Thread類

B 實現(xiàn)Runnable接口

C 實現(xiàn)Thread接口

D 以上都不正確

題解:
1、實現(xiàn)多線程的方法: 1.繼承Thread類 2.實現(xiàn)Runnable接口 3.實現(xiàn)Callable接口
2、 實現(xiàn)多線程的方法: 1.繼承Thread類 2.實現(xiàn)Runnable接口 3.實現(xiàn)Callable接口
3、然后使用 FutureTask包裝,因為Callable接口沒有實現(xiàn)Runnable接口不能做為Thread的target,而FutureTask是在Java程序中可以取消的異步運算,有可以開始,取消運算,查詢運算是否結(jié)束,獲得查詢結(jié)果的功能,特別注意的是,如果查詢結(jié)果時,運算還沒完成則會阻塞線程。 4.使用,java.util.current.ThreadPoolExecutor來獲取線程,執(zhí)行多線程
4、 Java多線程實現(xiàn)方式主要有四種:繼承Thread類、實現(xiàn)Runnable接口、實現(xiàn)Callable接口通過FutureTask包裝器來創(chuàng)建Thread線程、使用ExecutorService、Callable、Future實現(xiàn)有返回結(jié)果的多線程。 其中前兩種方式線程執(zhí)行完后都沒有返回值,后兩種是帶返回值的。

9、下面哪些具體實現(xiàn)類可以用于存儲鍵,值對,并且方法調(diào)用提供了基本的多線程安全支持:()

正確答案:AE

A java.util.ConcurrentHashMap

B java.util.Map

C java.util.TreeMap

D java.util.SortMap

E java.util.Hashtable

F java.util.HashMap

題解:
1、Hashtable的方法都是synchrnized修飾的線程安全,ConcurrentHashMap并發(fā)容器,JDK7采用分段鎖,JDK8采用CAS算法,線程安全,建議使用,Connections工具類提供了一個方法synchrnizedMap可以把Map同步,本質(zhì)就是給每一個方法加上synchrnized關鍵字進行同步
2、 Hashtable是線程安全的哈希表,它是通過synchronized來保證線程安全的;即,多線程通過同一個“對象的同步鎖”來實現(xiàn)并發(fā)控制。Hashtable在線程競爭激烈時,效率比較低(此時建議使用ConcurrentHashMap)。當一個線程訪問Hashtable的同步方法時,其它線程如果也在訪問Hashtable的同步方法時,可能會進入阻塞狀態(tài)。 Collections.synchronizedMap()使用了synchronized同步關鍵字來保證對Map的操作是線程安全的。 ConcurrentHashMap是線程安全的哈希表。在JDK1.7中它是通過“鎖分段”來保證線程安全的,本質(zhì)上也是一個“可重入的互斥鎖”(ReentrantLock)。多線程對同一個片段的訪問,是互斥的;但是,對于不同片段的訪問,卻是可以同步進行的。在JDK1.8中是通過使用CAS原子更新、volatile關鍵字、synchronized可重入鎖實現(xiàn)的。
3、 完美的避開了正確答案

10、以下關于對象序列化描述正確的是

正確答案:CD

A 使用FileOutputStream可以將對象進行傳輸

B 使用PrintWriter可以將對象進行傳輸

C 使用transient修飾的變量不會被序列化

D 對象序列化的所屬類需要實現(xiàn)Serializable接口

題解:
1、 1、答案應該是C、D。 2、能夠?qū)ο筮M行傳輸?shù)拿菜浦挥蠴bjectOutputStream和ObjectInputStream這些以Object開頭的流對象。 3、D項繼承Seriallizable接口是經(jīng)常見到的,這毋庸置疑。 4、transient 修飾的變量在對象串化的時侯并不會將所賦值的值保存到傳中,串化的對象從磁盤讀取出來仍然是null。 5、這值得說下Volatile這個修飾符,它是針對多線程情況下出現(xiàn)的。當線程讀取它修飾的變量時,都會強迫從主存中重新讀取。

答案匯總:

1、正確答案:A

2、正確答案:D

3、正確答案:B

4、正確答案:D

5、正確答案:D

6、正確答案:A

7、正確答案:ABD

8、正確答案:AB

9、正確答案:AE

10、正確答案:CD

總結(jié)

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

相關文章

  • Java?SpringBoot操作Redis

    Java?SpringBoot操作Redis

    這篇文章主要介紹了SpringBoot如何操作Redis,文章中有詳細的代碼示例,有一定的參考價值,感興趣的同學可以參考閱讀
    2023-04-04
  • java實現(xiàn)后臺處理base64圖片還原為文件

    java實現(xiàn)后臺處理base64圖片還原為文件

    這篇文章主要介紹了java實現(xiàn)后臺處理base64圖片還原為文件,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • Java5 枚舉類詳解及實例代碼

    Java5 枚舉類詳解及實例代碼

    這篇文章主要介紹了Java5 枚舉類詳解及實例代碼的相關資料,枚舉類是java5 新類型,全部都是類型安全的形式表示,需要的朋友可以參考下
    2016-12-12
  • Java類如何實現(xiàn)一個類的障眼法(JadClipse的bug)

    Java類如何實現(xiàn)一個類的障眼法(JadClipse的bug)

    這篇文章主要介紹了Java類實現(xiàn)一個類的障眼法(JadClipse的bug),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • JSON字符串中獲取一個指定字段的值四種方式

    JSON字符串中獲取一個指定字段的值四種方式

    在Java開發(fā)中,我們經(jīng)常會遇到需要從JSON數(shù)據(jù)中提取特定字段值的情況,這篇文章主要給大家介紹了關于JSON字符串中獲取一個指定字段的值四種方式,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-09-09
  • 基于maven的三種packaging方式

    基于maven的三種packaging方式

    這篇文章主要介紹了maven的三種packaging方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • Java下載https文件并上傳阿里云oss服務器

    Java下載https文件并上傳阿里云oss服務器

    這篇文章主要介紹了Java下載https文件并上傳到阿里云oss服務器,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-01-01
  • java JDBC系列教程之JDBC類的簡析與JDBC的基礎操作

    java JDBC系列教程之JDBC類的簡析與JDBC的基礎操作

    這篇文章主要介紹了java JDBC系列教程之JDBC類的簡析與JDBC的基礎操作,本文分步驟通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-07-07
  • JAVA遍歷map的幾種實現(xiàn)方法代碼

    JAVA遍歷map的幾種實現(xiàn)方法代碼

    這篇文章主要介紹了JAVA遍歷map的幾種實現(xiàn)方法,有需要的朋友可以參考一下
    2014-01-01
  • Java源碼解析HashMap的resize函數(shù)

    Java源碼解析HashMap的resize函數(shù)

    今天小編就為大家分享一篇關于Java源碼解析HashMap的resize函數(shù),小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-01-01

最新評論