點擊查看:2018年12月計算機二級Java考試沖刺題及答案匯總
1、Swing與AWT相比新增的布局管理器是______。
A、CardLayout
B、GridLayout
C、GridBagLayout
D、BoxLayout
本題考查的是布局管理器。
Swing繼續(xù)沿用AWT中的布局管理器,包括FlowLayout、BorderLayout、CardLayout、GridLayout、GridBagLayout,另外Swing新增加了一個BoxLayout布局管理器。
故本題答案為D。
2、下列對Java特性的敘述中,錯誤的是______。
A、在編寫Java子類時可以自由地增加新方法和屬性
B、Java的Applet要求編程首先創(chuàng)建JFrame窗口
C、Java語言用解釋器執(zhí)行字節(jié)碼
D、Java中的類一般都有自己的屬性和方法
本題考查的是Applet的概念。
Applet是能夠嵌入到HTML頁面中,并能夠在瀏覽器中運行的Java類,本身并不一定需要首先創(chuàng)建窗體,但可以使用JApple類來使用Swing構件。
Swing包中的JFrame類與創(chuàng)建窗口有關,是提供給java應用程序用來放置圖形用戶界面的一個容器。
JApplet類與JFrame一樣是頂層的Swing容器。包含Swing構件的Applet必須是JApplet的子類。
故本題答案為B。
3、閱讀下面求質數的程序
import java.lang.Math.*;
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)Math.ceil(Math.sqrt((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];
System.out.println(n);
}
}
}
在程序下劃線處填入的正確選項是______。
A、&
B、*
C、/
D、%
本題考查的是JAVA程序結構。
所謂質數或稱素數,就是一個正整數,除了本身和1以外并沒有任何其他因子。任何一個整數,可以寫成一串質數相乘的積。
程序中首先定義了包含有20個元素的長整型數組,為數組的第一,第二個元素賦值,并且還定義了一個長整型變量"long number=5L;",然后進入循環(huán),該循環(huán)的作用是判斷當前變量number的值是否為質數,其中Math.sqrt(double x)方法的作用是求x的平方根,而Math.ceil()方法的作用是求最小的整數但不小于本身(例如:Math.ceil(3.14)則返回4),在本次循環(huán)中,需要判斷變量number與primes[i]的取余操作,如果變量number與小于自己的平方根取整且小于count的數取余數為0,則跳出循環(huán),將number的值寫入數組中,當20個元素填滿后,程序依次輸出數組元素。
故本題答案為D。
4、在Java中,"目錄"被看作是______。
A、文件
B、流
C、數據
D、接口
本題考查的是目錄的概念。
目錄在Java中作為一種特殊文件,即文件名的列表,通過類File所提供的方法,可得到文件或目錄的描述信息(包括名字、路徑、長度、可讀、可寫等),也可以生成新文件、目錄、修改文件和目錄,查詢文件屬性,重命名文件或者刪除文件。
故本題答案為A。
5、下列帶下劃線的標識符符合Java命名約定的是______。
A、package com.Bi.hr
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語言中,程序為對象動態(tài)分配內存。Java中內存分配的運算符是new。
故本題答案為A。
7、RandomAccessFile是java.io包中的一個兼有輸入輸出功能的類。由于它是隨機訪問,所以文件讀寫一個記錄的位置是______。
A、起始
B、終止
C、任意
D、固定
本題考查的是隨機文件流。
文件操作中經常需要的是隨機訪問,Java中的RandomAccessFile類提供了隨機訪問文件的功能,它繼承了Object類,用DataInput和DataOutput接口來實現(xiàn)。接口中定義了從流中讀/寫基本類型的數據方法。因此也可以隨機讀入字節(jié)數據文件的記錄。
故本題答案為C。
8、下列語句中正確的是______。
A、System.out.println(1+’1’);
B、int i=2+"2";
C、String s="on"+’one’;
D、byte b=257;
本題考查的是語句。
選項A是一個輸出語句,輸出結果是:字符1對應的ASCII碼的值(值為49)加1,即:50。
選項B語句中包含一個算術表達式,在算術表達式中,操作數只能是整型或浮點型數據,而表達式中的"2"為字符串類型,所以該選項錯誤;
JAVA允許將字符串用+號連接起來,但是選項C中one是用單引號括起來的,不能算字符串,所以C選項錯誤;
選項D中,變量b的數據類型為byte型,只有8位,能表示數據的范圍為-128~+127,而257已超過byte型所能表示的數據范圍,故D選項錯誤。
故本題答案為A。
9、閱讀下面Applet程序
import javax.swing.*;
import java.awt.*;
public class SwingApplet extends JApplet{
JLabel l=new JLabel("This is a Swing Applet.");
public void init(){
______
}
}
在程序下劃線處填入正確選項是______。
A、Container contentPane=getContentPane(); contentPane.add(l);
B、JPanel contentPane=new JPanel(); contentPane.add(l);
C、contentPane.add(l);
D、add(l);
本題考查的是基于Swing的Applet用戶界面。
JApplet是頂層的Swing容器,其內部用一個隱含的根面板(JRootPanel)作為惟一的直接后代,而根面板中的內容面板(Content Pane)才是JApplet除菜單條外所有構件的雙親。由于內容面板的存在,通常對JApplet添加構件有兩種方式:
1、用getContentPane()方法獲得JApplet的內容面板,再向內容面板中添加構件:
Container contentPane=getContentPane(); contentPane.add(SomeComponent);
2、建立一個JPanel之類的中間容器,把構件添加到容器中,再用setContentPane()方法把該容器置為JApplet的內容面板:
JPanel contentPane=new JPanel(); contentPane.add(SomeComponent); setContentPane(contentPanel);
故本題答案為A。
10、在Java中,對象流以______方式傳送和存儲。標準答案為:串行
本題考查的是對象的串行化。
Java中定義了兩種類型的字節(jié)流ObjectInputStream和ObjectOutputStream支持對象的讀和寫,一般將這兩種稱為對象流。Java對象的讀、寫的過程被稱為串行化,對象流以串行方式傳送和存儲。
故本題答案為串行。
11、Swing中的組件往往采用MVC結構,MVC指的是Model、View和______。標準答案為:Controller 或 Control
本題考查的是MVC(Model-View-Controller)體系結構。
Swing勝過AWT的主要優(yōu)勢在于MVC體系結構的普遍使用。MVC體系結構是"Model-View-Controller"的縮寫,中文翻譯為"模式-視圖-控件"。MVC應用程序總是由這三個部分組成。Event(事件)導致Controller改變Model或View,或者同時改變兩者。只要Controller改變了Models的數據或者屬性,所有依賴的View都會自動更新。類似的,只要Controller改變了View,View會從潛在的Model中獲取數據來刷新自己。
故本題答案為Controller。
12、下列方法中與Applet顯示無關的是______。
A、update()
B、draw()
C、repaint()
D、paint()
本題考查的是Applet顯示。
Applet顯示相關的3個方法:
1、paint()方法:Applet的paint()方法具體執(zhí)行Applet的繪制,該方法定義如下:
public void paint(Graphics g)
paint()方法有一個參數g是Graphics類的實例,該實例對象由瀏覽器生成,它包含了Applet的圖形上下文信息,通過它向Applet中顯示信息,該對象相當于Applet的畫筆。在調用paint()方法時,由瀏覽器將該對象傳遞給paint()方法。
2、update()方法:
public void update(Graphics g)
用于更新Applet的顯示。該方法將首先清除背景,再調用paint()方法完成Applet的具體繪制。
3、repaint()方法:
public void repaint()
repaint()方法主要用于Applet的重新顯示,它調用update()方法實現(xiàn)對Applet的更新。
故本題答案為B。
相關推薦: