1. 程式人生 > >Java基礎筆記整理1--多執行緒&集合Collection

Java基礎筆記整理1--多執行緒&集合Collection

1. 下列說法正確的是(B D)

A 我們直接呼叫Thread物件的run方法會報異常,所以我們應該使用start方法來開啟一個執行緒
B 一個程序是一個獨立的執行環境,可以被看做一個程式或者一個應用。而執行緒是在程序中執行的一個任務。Java執行環境是一個包含了不同的類和程式的單一程序。執行緒可以被稱為輕量級程序。執行緒需要較少的資源來建立和駐留在程序中,並且可以共享程序中的資源
C synchronized可以解決可見性問題,volatile可以解決原子性問題
D ThreadLocal用於建立執行緒的本地變數,該變數是執行緒之間不共享的

筆記:

synchronized很強大,既可以保證可見性,又可以保證原子性,而volatile不能保證原子性!

2. Java多執行緒有幾種實現方法?(A B)

A 繼承Thread類
B 實現Runnable介面
C 實現Thread介面
D 以上都不正確

筆記:

多執行緒一共有三種實現方式

  1. 繼承Thread類,並重寫run()方法
  2. 實現Runnable介面,實現run()方法
  3. 實現Callable介面,執行緒結束後可以有返回值,但是該方式是依賴於執行緒池的。

3. 子類不能繼承父類的無參建構函式。

4. JAVA程式不能依賴於垃圾回收的時間或者順序

5. 關於HashMap和Hashtable正確的說法有(A C)

A.都實現了Map介面
B.Hashtable類不是同步的,而HashMap類是同步的
C.Hashtable不允許null鍵或值
D.HashMap不允許null或值

Collection

    -----List

               -----LinkedList    非同步

                ----ArrayList      非同步,實現了可變大小的元素陣列

                ----Vector          同步           

    -----Set   不允許有相同的元素

 Map

    -----HashTable        同步,實現一個key--value對映的雜湊表,key和value都不允許出現null值

    -----HashMap          非同步,

    -----WeakHashMap   改進的HashMap,實現了“弱引用”,如果一個key不被引用,則被GC回收

注:

  • List介面中的物件按一定順序排列,允許重複 
  • Set介面中的物件沒有順序,但是不允許重複 
  • Map介面中的物件是key、value的對映關係,key不允許重複

6. 下列說法錯誤的有( B C D)

A.能被java.exe成功執行的java class檔案必須有main()方法
B.J2SDK就是Java API
C.Appletviewer.exe可利用jar選項執行.jar檔案
D.能被Appletviewer成功執行的java class檔案必須有main()方法

筆記:

B選項中 J2SDK是程式設計工具,不是API.

C選項中 appletviewer.exe執行選項引數中並沒有jar選項。如下如所示:

D選項中 能被Appletviewer成功執行的java class檔案沒有main()方法。

appletviewer(小程式瀏覽器):一種執行HTML檔案上的Java小程式類的Java瀏覽器,就是用來解釋執行java  applet應用程式的,簡單理解就是沒有main函式的繼承applet類的 java 類。類似於WEB上開發的java類,不需要寫main函式。

7.SQL 語言是(非過程化)的語言,易學習。