1、下列對Java語言的敘述中,錯誤的是______。
A、Java虛擬機器解釋執行位元組碼
B、JDK的庫檔案目錄是bin
C、Java的類是對具有相同行為物件的一種抽象
D、Java中的垃圾回收機制是一個系統級的執行緒
本題考查的是JDK目錄結構。
在JDK目錄結構中,lib目錄下存放的都是庫檔案,而bin目錄下有編譯器、直譯器和許多工具(如伺服器工具、IDL、package工具和jdb等)。
故本題答案為B。
2、下列不屬於Swing構件的是______。
A、JMenu
B、JApplet
C、JOptionPane
D、Panel
本題考查的是Swing構件和容器。
Swing中的大多數構件都是AWT構件名前面加了一個"J"。
Swing構件分類(從功能上):
1、頂層容器,JFrame、JApplet、JDialog和JWindow共4個。
2、中間容器,JPanel、JScrollPane、JSplitPane、JToolBar。
3、特殊容器,在GUI上起特殊作用的中間層,如JInternalFrame、JLayeredPane、JRootPane。
4、基本控制元件,實現人機互動的構件,如Jbutton、JComboBox、JList、JMenu、JSlider、JtextField。
5、不可編輯資訊的顯示,向用戶顯示不可編輯資訊的構件,例如JLabel、JProgressBar、ToolTip。
6、可編輯資訊的顯示,向用戶顯示能被編輯的格式化資訊的構件,如JColorChooser、JFileChooser、JFileChooser、JTable、JTextArea。
故本題答案為D。
3、下列概念中不包括任何實現,與儲存空間沒有任何關係的是______。
A、類
B、介面
C、抽象類
D、物件
本題考查的是介面。
介面是一種只含有抽象方法或常量的一種特殊的抽象類,因為介面不包括任何實現,所以與儲存空間沒有任何關係。
故本題答案為B。
4、閱讀下列程式碼;
public class Test{
String s="One World One Dream";
public static void main(String args[]){
tln(s);
}
}
其執行結果是______。
A、args
B、One World One Dream
C、s
D、編譯時出錯//除非建立Text類的物件
本題考查的是變數的宣告。
main方法是程式執行的入口,在本程式中main方法中的語句"tln(s);"無法呼叫在main方法外宣告的變數,所以編譯時出錯。
故本題答案為D。
5、閱讀下列程式碼段
ByteArrayOutputStream bout=new ByteArrayOutputStream();
ObjectOutputStream out=new ObjectOutputStream(bout);
eObject(this);
e();
以上程式碼段的作用是______。
A、將物件寫入記憶體
B、將物件寫入硬碟
C、將物件寫入光碟
D、將物件寫入檔案
本題考查的是Java中包含的輸入/輸出流的類。
ByteArrayOutputStream,位元組陣列輸出流。這個類將一個位元組陣列作為輸出流。這個用於儲存輸出資料的內部位元組陣列長度可以按照需要增長。
ObjectOutputStream既繼承了OutputStream抽象類,又實現了ObjectOutput介面,這是Java用介面技術代替雙重繼承例子,其構造方法引數是序列化了的物件。
在中,ByteArrayOutputStream是OutputStream的子類,可以直接訪問記憶體。用ByteArrayOutputStream可以向位元組陣列(緩衝區)寫入資料。
故本題答案為A。
6、閱讀下列程式碼段
abstract class Person{
public Person(String n){
name=n;
}
public ______ String getDescription();
public String getName(){
return name;
}
private String name;
}
在下劃線處應填入的修飾符是______。
A、static
B、abstract
C、protected
D、final
本題考查的是定義抽象類。
抽象類是專門設計來讓子類繼承的類。抽象類通常都包括一個或多個抽象方法(只有方法說明,沒有方法體),抽象類的子類必須完成其父類定義的每一個抽象方法,除非該子類也是抽象類。
抽象類是以abstract關鍵字開頭,抽象類定義具體形式:
abstract class 類名稱
{
成員變數;
方法(); //定義一般的方法
abstract 方法(); //定義抽象的方法
}
故本題答案為B。
1、Swing與AWT相比新增的佈局管理器是______。
A、CardLayout
B、GridLayout
C、GridBagLayout
D、BoxLayout
本題考查的是佈局管理器。
Swing繼續沿用AWT中的佈局管理器,包括FlowLayout、BorderLayout、CardLayout、GridLayout、GridBagLayout,另外Swing新增加了一個BoxLayout佈局管理器。
故本題答案為D。
2、下列對Java特性的敘述中,錯誤的是______。
A、在編寫Java子類時可以自由地增加新方法和屬性
B、Java的Applet要求程式設計首先建立JFrame視窗
C、Java語言用直譯器執行位元組碼
D、Java中的類一般都有自己的屬性和方法
本題考查的是Applet的概念。
Applet是能夠嵌入到HTML頁面中,並能夠在瀏覽器中執行的Java類,本身並不一定需要首先建立窗體,但可以使用JApple類來使用Swing構件。
Swing包中的JFrame類與建立視窗有關,是提供給java應用程式用來放置圖形使用者介面的一個容器。
JApplet類與JFrame一樣是頂層的Swing容器。包含Swing構件的Applet必須是JApplet的子類。
故本題答案為B。
3、閱讀下面求質數的程式
import .*;
public class MorePrimesTest{
public static void main(String[] args){
long[] primes=new long[20];
primes[0]=2L;
primes[1]=3L;
long number=5L;
outer:
for(int count=2;count long limit=(long)(((double)number));
for(int i=1;i if(number ______ primes[i]==0L){
continue outer;
}
}
primes[count++]=number;
}
for(int j=0;j long n=primes[j];
tln(n);
}
}
}
在程式下劃線處填入的正確選項是______。
A、&
B、*
C、/
D、%
本題考查的是JAVA程式結構。
所謂質數或稱素數,就是一個正整數,除了本身和1以外並沒有任何其他因子。任何一個整數,可以寫成一串質數相乘的積。
程式中首先定義了包含有20個元素的長整型陣列,為陣列的第一,第二個元素賦值,並且還定義了一個長整型變數"long number=5L;",然後進入迴圈,該迴圈的作用是判斷當前變數number的值是否為質數,其中(double x)方法的作用是求x的.平方根,而()方法的作用是求最小的整數但不小於本身(例如:(3.14)則返回4),在本次迴圈中,需要判斷變數number與primes[i]的取餘操作,如果變數number與小於自己的平方根取整且小於count的數取餘數為0,則跳出迴圈,將number的值寫入陣列中,當20個元素填滿後,程式依次輸出陣列元素。
故本題答案為D。
4、在Java中,"目錄"被看作是______。
A、檔案
B、流
C、資料
D、介面
本題考查的是目錄的概念。
目錄在Java中作為一種特殊檔案,即檔名的列表,通過類File所提供的方法,可得到檔案或目錄的描述資訊(包括名字、路徑、長度、可讀、可寫等),也可以生成新檔案、目錄、修改檔案和目錄,查詢檔案屬性,重新命名檔案或者刪除檔案。
故本題答案為A。
5、下列帶下劃線的識別符號符合Java命名約定的是______。
A、package
B、public class xyz
C、int I
D、void setCustomerName()
本題考查的是Java命名約定。
包的名字應該都是由小寫單片語成。它們全都是小寫字母,即便中間的單詞亦是如此,所以A選項錯誤。
類名的第一個字母一定要大寫,所以B選項錯誤;
變數的第一個字母應該為小寫,所以C選項錯誤;
與屬性相對應的get、set方法為:set(get)+屬性名,屬性名第一個字母為大寫,所以D選項正確。
故本題答案為D。
6、在Java語言中,被稱為記憶體分配的運算子是______。
A、new
B、instance of
C、[ ]
D、( )
本題考查的是JAVA關鍵字。
Java語言中,程式為物件動態分配記憶體。Java中記憶體分配的運算子是new。
故本題答案為A。