两个人做人爱视频免费,97久久精品人人搡人妻人人玩,欧洲精品码一区二区三区,999zyz玖玖资源站永久

我要投稿 投訴建議

計算機二級《JAVA》選擇題及答案

時間:2022-10-16 02:10:31 計算機等級 我要投稿
  • 相關推薦

2017計算機二級《JAVA》選擇題及答案

  為了幫助大家更好的復習,下面是CN人才網為大家整理的2017計算機二級《JAVA》選擇題及答案,歡迎參考~

  2017計算機二級《JAVA》選擇題及答案

  1.下面排序算法中,平均排序速度最快的是()。

  A.冒泡排序法

  B.選擇排序法

  C.交換排序法

  D.堆排序法

  2.軟件需求分析一般應確定的是用戶對軟件的()。

  A.功能需求

  B.非功能需求

  C.性能需求

  D.功能需求和非功能需求

  3.下列說法中,不屬于數據模型所描述的內容是()。

  A.數據結構

  B.數據操作

  C.數據查詢

  D.數據約束

  4.下列描述中,不是線性表順序存儲結構特征的是()

  A.不便于插入和刪除

  B.需要連續的存儲空間

  C.可隨機訪問

  D.需另外開辟空間來保存元素之間的關系

  5.有下列二叉樹,對此二叉樹前序遍歷的結囊為()。

  A.ACBEDGFH

  B.ABDGCEHF

  C.HGFEDCBA

  D.ABCDEFGH

  6.使用白盒測試法時,確定測試數據應該根據()和指定的覆蓋標準。

  A.程序的內部邏輯

  B.程序的復雜結構

  C.使用說明書

  D.程序的功能

  7.關系數據庫管理系統能實現的專門關系運算包括()。

  A.排序、索引、統計

  B.選擇、投影、連接

  C.關聯、更新、排序

  D.顯示、打印、制表

  8.將E-R圖轉換到關系模式時,實體與實體間的聯系可以表示成()。

  A.屬性

  B.關系

  C.鍵

  D.域

  9.下列有關數組的敘述中,錯誤的是()。

  A.在同一個環境下,數組與內存變量可以同名,兩者互不影響

  B.可以用一維數組的形式訪問二維數組

  C.在可以使用簡單內存變量的地方都可以使用數組元素

  D.一個數組中各元素的數據類型可以相同,也可以不同

  10.下列選項中,不屬于模塊間耦合的是()。

  A.數據耦合

  B.標記耦合

  C.異構耦合

  D.公共耦合

  11.在Java中,負責對字節代碼解釋執行的是()。

  A.垃圾回收器

  B.虛擬機

  C.編譯器

  D.多線程機制

  12.下列敘述中,正確的是()。

  A.Java語言的標識符是區分大小寫的

  B.源文件名與public類名可以不相同

  C.源文件的擴展名為.jar

  D.源文件中public類的數目不限

  13.下列屬于合法的Java標識符的是()。

  A._cat

  B.5books

  C.+static

  D.-3.14159

  14.在Java中,表示換行符的轉義字符是()。

  A.

  B.f

  C.’n’

  D.ddd

  15.在Java中,由Java編譯器自動導入而無需在程序中用import導人的包是()。

  A.java.applet

  B.java.awt

  C.java.util

  D.java.lang

  16.“++”運算符的操作數個數是()。

  A.1個

  B.2個

  C.3個

  D.4個

  17.在switch(expression)語句中,expression的數據類型不能是()。

  A.double

  B.char

  C.byte

  D.short

  18.下列敘述中,錯誤的是()。

  A.父類不能替代子類

  B.子類能夠替代父類

  C.子類繼承父類

  D.父類包含子類

  19.已知:int[]a=newint[100];在下列給出的數組元素中,非法的是()。

  A.a[0]

  B.a[1]

  C.a[99]

  D.a[100]

  20.在文件類提供的方法中,用于創建目錄的方法是()。

  A.mkdir()

  B.mkdirs()

  C.list()

  D.listRoots()

  21.下列程序的執行結果為()。

  publicclassc3

  {

  publicstaticvoidmain(Stringargs[])

  {

  inti=13,j=10;

  if(i-->j)

  i++:

  elsej--;

  System.out.println(i+" "+j);

  }

  }

  A.1310

  B.1211

  C.1111

  D.1212

  22.下列程序的輸出結果是()。

  publicclassTest

  {

  voidprintValue(intm)

  {

  do{

  System.out.println("Thevalueis"+m)

  }

  while(--m>10)

  }

  publicstaticvoidmain(Stringargs[])

  {

  inti=10;

  Testt=newTest():

  t.printValue(i):

  }

  }

  A.Thevalueis8

  B.Thevalueis9

  C.Thevalueisl0

  D.Thevalueis11

  23.for(intx=0,y=0;!x&&y<=5;y++)語句執行循環的次數是()。

  A.0

  B.5

  C.6

  D.無窮

  24.下列描述異常含義的'各選項中,正確的是()。

  A.程序編譯錯誤

  B.程序語法錯誤

  C.程序自定義的異常事件

  D.程序編譯或運行時發生的異常事件

  25.一個JavaApplication運行后,在系統中是作為一個()。

  A.線程

  B.進程

  C.進程或線程

  D.不確定

  26.Thread類的方法中用于修改線程名字的方法是()。

  A.setName()

  B.reviseName()

  C.getName()

  D.checkAccess()


  27.在創建線程時可以顯式地指定線程組,此時可供選擇的線程構造方法有()種。

  A.1

  B.2

  C.3

  D.4

  28.要串行化某些類的對象,這些類必須實現()。

  A.Serializable接口

  B.java.i0.Exceptionlizable接口

  C.java.i0.Datalnput接口

  D.DataOutput接口

  29.關于集合類描述正確的是()。

  Ⅰ.集合類中容納的都是指向Object類對象的指針

  Ⅱ.集合類容納的對象都是Object的類例

  Ⅲ.只能容納對象

  IV.只能容納基本數據類型

  A.Ⅰ、Ⅱ、Ⅲ

  B.Ⅰ、Ⅱ

  C.Ⅰ、Ⅲ

  D.Ⅰ、Ⅱ、Ⅲ、IV

  30.下列組件不能添加進Frame主窗口的是()。

  A.Panel

  B.CheckBox

  C.Dialog

  D.Choice

  31.下面程序段的輸出結果為()。

  packagetest;

  publicclassClassA

  {

  intx=20:

  staticinty=6;

  publicstaticvoidmain(Stringargs[])

  {

  ClassBb=newClassB();

  b.go(10);

  System.out.println("x="+b.x);

  }

  }

  classClassB

  {

  intX;

  voidgo(inty)

  {

  ClassAa=newClassA();

  x=a.Y;

  }

  }

  A.x=10

  B.x=20

  C.x=6

  D.編譯不通過

  32.下面程序段的輸出結果為()。

  publicclassTest

  {

  inta,b;

  Test()

  {

  a=100;

  b=200:

  }

  Test(intX,inty)

  {

  a=x:

  b=y;

  }

  publicstaticvoidmain(Stringargs[])

  {

  TestObjl=newTest(12,45);

  System.OUt.println("a="+Objl.a+"b="+Objl.

  b);

  TestObj2=newTest();

  System.out.println("fl="+Obj2.a+"b="+Obj2.

  b);

  }

  }

  A.a=100b=200

  a=12b=45

  B.a=12b=45

  a=100b=200

  C.a=12b=200

  a=100b=45

  D.a=100b=45

  a=12b=200

  33.在匹配器(Matcher)類中,用于尋找下一個模式匹配串的方法是()。

  A.staticbooleanmatches()

  B.booleanmatcher.find()

  C.intmatcher.start()

  D.intmatcher.end()

  34.下列說法正確的是()。

  A.共享數據的所有訪問都必須作為臨界區

  B.用synchronized保護的共享數據可以是共有的

  C.Java中對象加鎖不具有可重人性

  D.對象鎖不能返回

  35.在JavaApplet程序中,如果對發生的事件做出響應

  和處理的時候,應該使用下列()語句。

  A.importjava.awt.event.*;

  B.importjava.io.*;

  C.importjava.awt.*;

  D.importjava.applet.*;

  36.在一個容量為32的循環隊列中,若頭指針front一

  3,尾指針rear=2,則該循環隊列中共有元素個數為()。

  A.29

  B.30

  C.31

  D.32

  37.Java語言中如果要使用某個包中的類時,需要使用()導人。

  A.inport

  B.outport

  C.import

  D.input

  38.執行下面程序段的輸出結果為()。

  publicclassQ

  {

  publicstaticvoidmain(Stringargv[])

  {

  intanar[]一newint[5];

  System.out.println(anar[0]);

  }

  }

  A.0

  B.1

  C.2

  D.5

  39.使得線程放棄當前分得的CPU時間,但不使線程阻塞,即線程仍處于可執行狀態,隨時可能再次分得CPU時間的方法是()。

  A.time()

  B.yield()

  C.load()

  D.min()

  40.以下程序計算1+1/3+1/5+…+1/(2N+1),直至1/(2N+1)小于0.00001,橫線處應補充的程序是()。

  publicclassSun{

  publicstaticvoidmain(Stringargs[]){

  intn=1:

  doubleterm,sum=1.0:

  do{

  n=__;

  term=1.0/n;

  sum=sum+term;

  }

  while(term>=0.00001);

  System.out.println(n);

  System.out.println(sum);


  參考答案與解析

  1.D。【解析】在各種排序方法中,快速排序法和堆排序法的平均速度是最快的,因為它們的時間復雜度都是O(nlog2n),其他的排序算法的時間復雜度大都是O(n2)。

  2.D。【解析】軟件需求分析中需要構造一個完全的系統邏輯模型,理解用戶提出的每一功能與性能要求,使用戶明確自己的任務。因此,需求分析應確定用戶對軟件的功能需求和非功能需求。

  3.C。【解析】數據模型所描述的內容包括三個部分,它們是數據結構、數據操作和數據約束。其中,數據結構主要描述數據的類型、內容、性質及數據庫的聯系等;數據操作主要是描述在相應數據結構上的操作類型與操作方式;數據約束主要描述數據結構內數據間的語法和語義聯系,它們之間的制約與依存關系,以及數據的動態變化的規則,用以保證數據的正確、有效與相容。

  4.D。【解析】線性表特點是邏輯上相鄰的元素在物理位置上也相鄰。數據元素之間邏輯上的先后關系自動隱含在物理位置的相鄰元素之中,因此不需要另外開辟空間來保存元素之間的關系。

  5.B。【解析】二叉樹的前序遍歷是指,先訪問根結點,再訪問左子樹,最后訪問右子樹。并且在訪問左右子樹時,也是先訪問其根結點,再訪問左右子樹。

  6.A。【解析】白盒測試是把測試對象看做一個打開的盒子,允許測試人員利用程序內部的邏輯結構及相關信患來設計或選擇測試用例,對程序所有的邏輯路徑進行測試。

  7.B。【解析】關系數據庫管理系統的專門關系運算包括選擇運算、投影運算和連接運算。

  8.B。【解析】將E-R圖轉換成指定DBMS中的關系模式是數據庫邏輯設計的主要工作。從E-R圖到關系模式的轉換是比較直接的,實體和聯系都可以表示成關系。

  9.A。【解析】整個數組的數據類型為A(Array),而各個數組元素可以分別存放不同類型的數據。在使用數組和數組元素時,應注意如下問題。在任何能使用簡單內存變量的地方都可以使用數組元素。在同一個環境下,數組名不能與簡單變量名重復。可以用一維數組的形式訪問二維數組。

  10.C。【解析】模塊之間的耦合程度反映了模塊的獨立性,也反映了系統分解后的復雜程度。按照耦合程度從弱到強,可以將其分成7級,分別是非直接耦合、數據耦合、標記耦合、控制耦合、外部耦合、公共耦合和內容耦合。其中沒有異構耦合這種方式。

  11.B。【解析】本題考查Java語言的虛擬機。Java語言的執行模式是半編譯半解釋型。Java編寫好的程序首先由編譯器轉換為標準字節代碼,然后由Java虛擬機去解釋執行。字節代碼是一種二進制文件,但不能直接在操作系統上運行,可看做虛擬機的機器碼。虛擬機把字節碼程序與各操作系統和硬件分開,使Java程序獨立于平臺。Java中的虛擬機是非常重要的概念,是Java語言的基礎,掌握后有助于理解Java語言的實現。

  12.A。【解析】本題考查考生對Java語言概念的理解。這些屬于考試重點內容。Java語言和C語言不同,它是區分大小寫的,選項A正確。Java程序的源文件擴展名為.class,.jar文件是由歸檔工具jar生成的。源文件中的public類的數目只能有0個或l個,用來指定應用程序類名,也是源文件名。

  13.A。【解析】本題考查Java標識符的命名規則,是考試的重點內容。Java中標識符的命名規則是標識符以字母、下畫線或美元符作為首字符的字符串序列,;標識符是區分大小寫的;標識符的字符數沒有限制。留此可見,Java中標識符不能以數字開頭,所以選項B錯誤,不能以“+”開頭,選項C錯誤,不能以“-”開頭,選項D錯誤,只有選項是正確答案。

  14.A。【解析】本題考查Java轉義符的概念。在Java中用反斜杠()開頭, 表示換行,所以選項A正確。f表示走紙換頁,kddd表示l~3位的八進制數據ddd所代表的字符。

  15.D。【解析】本題考查Java中包的概念。Java中用import語句來導入包,但需注意的是,Java語言中的java.lang包是由編譯器直接自動導入的,因此,編程時使用該包中的類,可省去import導入。使用其他包中的類,必須用import導入,選項D為正確答案。

  16.A。【解析】本題考查Java運算符的概念。程序涉及的數據處理,都是通過運算符和表達式來操作,是程序設計的基礎,因此務必掌握。按照操作數的數目劃分,運算符可以分為一元運算符:++,--,+,-;二元運算符:+,-,>;三元運算符:?:。所以本題正確答案是選項A。簡單地說,就是有幾個操作數就是幾元運算符;反過來,是幾元運算符就有幾個操作數。

  17.A。【解析】本題考查考生對switch(expression)語句的理解。表達式expression只能返回int、byte、short和char,題目中的double是不正確的。同時還要注意,多分支結構中,case子句的值必須是常量,而且所有case子句中的值應是不同的,default子句是任選的。

  18.D。【解析】本題考查繼承的概念。繼承性是面向對象方法的一個重要基本特征,它使代碼可重用,可降低程序的.復雜性。對一個類的繼承也就是構建了一個子類,子類繼承了父類的方法和狀態,同時還可以向新類中增添新的方法和狀態。重點掌握兩點:子類方法的訪問權限比父類的訪問權限高,因此父類不能替代子類,但子類能夠代替父類,選項A和選項B說法正確;子類方法不能產生比父類更多的異常。選項D為正確答案。

  19.D。【解析】本題考查Java中數組的概念。對于數組的掌握,不能僅僅停留在概念上,更多的是能將所學的知識靈活運用。int[]a=newint[100]定義了一個數組a,含有100個整型元素。在Java中,數組元素的下標是從。開始的,因此上面定義的數組實際上下標是0~99,所以選項D錯誤。

  20.A。【解析】本題考查文件類提供的方法。mkdir()是為目錄操作提供酌方法,用來創建目錄;mkdirs()也是為目錄操作提供的方法,創建包含父目錄的目錄;list()是對文件名操作提供的方法,返回一個字符串數組,為該文件所在目錄下的所有文件名列表;listRoots是為目錄提供的方法,返回根目錄結構。由此可見,只有選項A滿足題目要求。

  21.A。【解析】程序是由if-else語句構成的流程,分析判斷條件,變量i和j比較,得到條件表達式的值為true,然后執行i-1,現在變量i的值為12,而j的值為10;由于條件表達式為true,則執行i++,因此i的值為13,并跳過else子句塊,循環控制語句執行完畢,這時變量i和i的值分別為13和10。

  22.C。【解析】此題考查的是do-while循環和“--”操作符的知識。do-while最少執行一次,在執行完d0中的內容后,判斷while中的條件是否為true。如果為true,就再執行do中的內容,然后進行判斷。以此類推,直到while的判斷為false時退出循環,執行循環后面的內容。而“--”操作符的規則是,變量右邊的“-”將先進行運算,然后才使

  變量的值減一。而在變量左邊的“--”,則先將變量的值減1再運算。本程序中i的值為10,當程序運行到do-while循環時,程序先執行一次循環,然后判斷,因此選C。

  23.C。【解析】此題是典型的考題。題中X=0,則!x永遠為真,對于條件表達式!x&&y<=5只考慮y<=5,由于每次循環Y都增加1,而且y從0開始到5。所以可知總共循環了6次。

  24.D。【解析】異常是在程序編譯或者運行時所發生的可預料或者不可預料的異常事件,它會引起程序的中斷,影響程序的正常運行。

  25.B。【解析】線程為一個程序中的單個執行流;進程是程序的一次動態執行過程,它對應了從代碼加載、執行到執行完畢的一個完整過程,這個過程也是進程本身從產生、發展到消亡的過程。一個JavaApplication運行后,在系統中應該就是一個進程了(動態)。

  26.A。【解析】Thread類的其他方法有setName()、getName()、activeCount()和setDaemon()等。其中,用于修改線程名字的方法是setName()。

  27.C。【解析】線程組是由java.lang包中的ThreadGroup類實現的。在創建線程時可以顯式地指定線程組,此時需要從如下三種線程構造方法中選擇一種:

  publicThread(ThreadGroupgroup,Runnabletarget);

  publicThread(ThreadGroupgroup,Stringname);

  publicThread(ThreadGroupgroup,Runnabletarget,

  Stringname)。

  28.A。【解析】Java語言中一個類只有實現Serializable接口,它的對象才是可串行化的。

  29.A。【解析】本題主要考查集合類的特點。選項A正確,集合類是用來存放某類對象的。集合類有一個共同特點,就是它們只容納對象。如果集合類中想使用簡單數據類型,又想利用集合類的靈活性,可以把簡單數據類型變成該數據類型類的對象,然后放入集合中處理,這表示集合類不能容納基本數據類型,所以IV是不正確的選項B錯誤,集合只容納對象;選項C錯誤,該選項少選了Ⅱ;選項D錯誤,錯誤原因同選項B。

  30.C。【解析】本題考查對Java組件容器中添加容器的基本知識。選項A錯誤,Panel組件是容器,可以添加到Frame窗口;選項B錯誤,CheekBox組件是復選框組件,可以添加到Frame窗口;選項C正確,Dialog繼承自Windows類,Windows類型(或子類)的對象不能包含在其他容器中;選項D錯誤,Choice組件是選擇框組件,可以添加到Frame窗口。

  31.C。【解析】本題考查在Java中靜態變量(類變量)的用法。在題目程序段中生成了一個staticinty=6類變量,在ClassA中調用的b.go(10),只不過是在ClassB中的一個局部變量,通過調用ClassB中的90方法可以生成一個ClassA對象,并給這個新生成的對象賦以ClassA中的類變量Y的值。從main()方法作為入口執行程序,首先生成一個ClassB的對象,然后b.go(10)會調用ClassA,會給X和Y賦值,X=a.Y后,X值為6,再返回去執行System.out.println("x="+b.x)語句,輸出為x=6,可見,正確答案為選項C。

  32.B。【解析】本題考查構造方法及構造方法重載。Test類有兩個構造方法,即使用了方法重載技術。不帶參數的構造方法對類的實例變量進行特定數值的賦值,而帶參數的構造方法根據參數對類的實例變量進行賦值。TestObjl=newTest(12,45)語句調用的是Test(intx,inty),而TestObj2=newTest()調用的是Test(),注意根據參數個數來區分。

  33.A。【解析】本題考查考生對Java中的匹配器(Mateher)類的理解。Matcher類用于將一個輸入字符串input和模式串pattern相比較。Booleanmateher.find()方法用于尋找下一個模式匹配串;intmatcher.start()方法用于返回匹配串的一個起始索引整數值;intmatcher.end()方法用于返回匹配串的一個終止索引整數值。而用于輸入字符串與模式串比較的方法是staticbooleanmatches(),選項A正確。

  34.A。【解析】本題考查對象加鎖的相關概念。對于對象加鎖的使用有些注意事項。對象的鎖在某些情況下可以由持有線程返回,比如當synchronized語句塊執行完成后;當在synchronized語句塊中出現異常;當持有鎖的線程調用該對象的wait()方法,由此可見選項D說法錯誤。共享數據的所有訪問都必須作為臨界區,使用synchronized進行加鎖控制,選項A說法正確。用synchronized保護的共享數據必須是私有的,選項B說法錯誤。Java中對象加鎖具有可重入性,選項C錯誤。

  35.C。【解析】本題考查對Java常用的各種包所包含的一些類的基本功能的理解。java.awt包是抽象窗口工具包,里面包括各種容器、組件、窗口布局管理器以及一些常用的類如Color、Font等,選項A滿足題意。而java.applet包里面包括了小程序執行時必須要重載的一個類Applet,也就只有這一個類,選項D錯誤。java.io包主要是提供一些輸入/輸出類的,選項B不滿足題意。java.awt.event包就包含了一些能夠對事件做出響應和處理的一些標準類,選項A不滿足題意。

  36.C。【解析】設隊列容量為m,rear>front,則隊列中元素個數為rear-front:rear37.C。【解析】本題考查包的導入和使用。首先用package語句說明一個包,該包的層次結構必須與文件目錄的層次相同,否則,在編譯時可能出現找不到包的問題。Java語言中java.lang包是編譯器自動導入,其他包中的類必須用import導入。

  38.A。【解析】本題考查Java中數組的定義和初始化。在該方法里定義并動態初始化了一個整型數組anar,由于沒有賦初值,系統默認的初始值是數組中的每個元素都為零。所以輸出數組中的第一個元素anar[0]時,自然也是等于零。

  39.B。【解析】本題考查線程阻塞的概念。yield()方法使得線程放棄當前分得的CPU時間,但是不使線程阻塞,印線程仍處于可執行狀態,隨時可能再次分得CPU時間。調用yield()的效果等價于調度程序認為該線程已執行了足夠的時間從而轉到另一個線程。

  40.D。【解析】本題考查do-while循環的用法。題目中沒有給出累加次數,故不能使用for循環,在do循環中,由累加項term的值作為退出循環的條件。根據題目要求,應該填寫2*n+1。本題的關鍵是while(term>=0.00001)語句,題目要求計算直至1/(2N+1)小于0.00001,所以terml/(2N+1),因此n=2*n+1。

【計算機二級《JAVA》選擇題及答案】相關文章:

計算機二級java精選試題及答案07-27

計算機二級JAVA沖刺試題及答案02-14

全國計算機二級JAVA考試精選選擇題07-25

2016計算機二級JAVA沖刺試題及答案02-21

計算機考試《二級java》試題及答案07-25

計算機二級Java備考沖刺試題及答案02-14

計算機二級考試Java模擬題及答案07-22

全國計算機等級考試二級java精選試題及答案07-26

2016年計算機二級Java備考練習試題及答案07-21

2017年9月全國計算機二級Java強化試題及答案07-29

主站蜘蛛池模板: 漾濞| 资中县| 汨罗市| 安平县| 寻乌县| 西丰县| 肃宁县| 湾仔区| 西畴县| 沙坪坝区| 阳春市| 监利县| 金山区| 新安县| 银川市| 明水县| 潢川县| 独山县| 左云县| 新乡县| 孝昌县| 张家界市| 达日县| 曲周县| 洪泽县| 通城县| 长垣县| 巩义市| 扶绥县| 雷州市| 远安县| 将乐县| 景德镇市| 梁河县| 麦盖提县| 岐山县| 永春县| 图木舒克市| 乌拉特后旗| 昌宁县| 万安县|