Java語言程序設計試題及答案(九)
Java語言程序設計是一門專業性比較強的課程,要學好這門課程,同學們還是要用心去學才能學好Java語言程序設計。下面是陽光網小編給大家整理的Java語言程序設計試題及答案,歡迎大家學習參考。
Java語言程序設計試題及答案(九)
一、單項選擇題(本大題共10小題,每小題1分,共10分) 在每小題列出的四個備選項中只有一個是符合題目要求的,請將其代碼填寫在題后的括號內
。錯選、多選或未選均無分。
1. 當啟動 Applet 程序時,首先調用的方法是() (1分)
A:stop()
B:init()
C:start()
D:destroy()
2. 用于存儲IP地址和域名的對象是() (1分)
A:URL對象
B:URLConnection對象
C:InetAddress對象
D:TCP/IP對象
3. 建立一個把list字符串數組元素作為選擇條目的列表list1,可以使用的代碼是() (1分)
A:list1=JList(list)
B:JList list1=JList(list)
C:JList list=new JList(list1)
D:JList list1=new JList(list)
4. 處理驅動程序的加載和建立新數據庫連接的類是() (1分)
A:Connection類
B:DriverManager類
C:Statement類
D:ResultSet類
5. 在Java程序中定義一個類,類中有一個沒有訪問權限修飾的方法,則此方法() (1分)
A:類外的任何方法都能訪問它
B:類外的任何方法都不能訪問它
C:類的子類和同包類能訪問它
D:只有類和同包類才能訪問它
6. 在Java中,有關菜單的敘述錯誤的是() (1分)
A:下拉式菜單通過出現在菜單條上的名字來可視化表示
B:菜單條通常出現在JFrame的頂部
C:菜單中的菜單項不能再是一個菜單
D:每個菜單可以有許多菜單項
7. 在Java Applet程序中,如果對發生的事件做出響應和處理的時候,應該使用的語句是() (1分)
A:import java.awt.*;
B:import java.applet.*;
C:import java.awt.event.*;
D:import java.io.*;
8. 在Java中,線程的調度策略采用() (1分)
A:分時式
B:搶占式
C:非分時式
D:非搶占式
9. 下列代碼中,錯誤的Java整型常量是() (1分)
A:007
B:008
C:0x3AA
D:0x3AB
10. 采用緩沖式輸出時,如果又想立即寫入到文件,則需要調用的方法是() (1分)
A:flash()
B:flush()
C:write()
D:read()
二、填空題(本大題共10小題,每小題2分,共20分)請在每小題的空格中填上正確答案。錯填、不填均無分。
1. ObjectOutputStream 是對象流;FileWriter 是字符流;FileInputStream是。 (2分)
2. 當線程A使用某個對象,而此對象又需要線程B修改后才能符合A線程的需要,這時線程A就要等待線程B完成修改工作,這種線程相互等待稱為。
(2分)
3. JDBC是java程序與數據庫連接的API,它可以與某個數據庫建立連接、向數據庫發送SQL語句和。 (2分)
4. 在Java語言中,整型常量有十進制、八進制和十六進制三種寫法,其中八進制是以數字字符0開頭,十六進制是以開頭。 (2分)
5. 是帶有滾動條的面板,它是一種容器,但是只能添加一個組件。 (2分)
6. 在Java語言中,一個對象通過調用方法可以獲得該對象的字符串表示。 (2分)
7. 在Java程序中如果需要使用打開文件對話框和保存文件對話框,則可以用javax.swing包中的類來實現。 (2分)
8. Java程序與數據庫連接方法有兩種。一種是使用與數據庫連接,另一種是用純Java的JDBC驅動程序實現與數據庫連接。 (2分)
9. Java小應用程序中,為了在Java頁面上顯示動態效果,需要使用方法,該方法先清除paint()方法以前所畫的內容,然后再調用paint()方法。 (2分)
10. 三次曲線(CubicCurve2D)的方法double()中的8個參數分別是三次曲線的始點、兩個控制點和。 (2分)
三、程序填空題(本大題共5小題,每空2分,共20分)
1. 定義JFrame派生的子類MyWindowDemo創建JFrame窗口。類MyWindowDemo的構造方法有五個參數:窗口的標題名,加入窗口的組件,窗口的背
景顏色以及窗口的高度和寬度。在主方法中,利用類MyWindowDemo創建兩個類似的窗口并顯示出來。
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
class MyWindowDemo extends JFrame
{
public MyWindowDemo(String name,JButton but,Color c,int w,int h)
{
super();setTitle(name);setSize(w,h);
setLayout(new FlowLayout());
Container;
contenPane.add(but);
contenPane.setBackground(c);
}
}
public class Class2802
{
public static MyWindowDemo mw[];
public static void main(String[] args)
{
JButton butt1=new JButton("我是一個按鈕");
JButton butt2=new JButton("我是另一個按鈕");
String name1="我的第一個窗口";
String name2="我的第二個窗口";
mw=new MyWindowDemo[2];
mw[0]=new MyWindowDemo(name1,butt1,Color.blue,350,450);
mw[1]=new MyWindowDemo(name2,butt2,Color.red,300,400);
for(int i=0;i<2;i++);
}
} (2分)
2. 以下是生成單選按鈕對象,以及單選按鈕選擇事件處理方法的代碼。要求當選中computer單選按鈕時,在標簽label中顯示“計算機性能和價格介
紹:”的字樣。
…………
computer=new("計算機");//生成單選按鈕對象
computer.addItemListener(this);
…………
public void(ItemEvent e)
{
if(e.getItemSelectable()==computer)
{
label.setText(computer.getLabel()+"性能和價格介紹:");
}
} (2分)
3. 下面是一個求:1/1+1/2+2/3+3/5+5/8+8/13+13/21+21/32…前20項的和的程序段
float a=1,b=1,s=0;
for(int k=1;k<=10;k++)
{
s=s+a/b;
a=
s=s+b/a;
b=
}
System.out.println(s); (2分)
4. 下面程序產生一個窗口,1秒后自動關閉。
public class Class3104 implements Runnable
{
{
try
{
Thread.sleep(1000);
}
catch(InterruptedException e){}
System.exit(0);
}
public Class3104()
{
JFrame my=new JFrame();
my.setBounds(100,100,600,300);
my.setVisible(true);
}
public static void main(String[] args)
{
Class3104 t=new Class3104();
Thread tt=;
tt.start();
}
} (2分)
5. 小應用程序啟動后自動播放一個“2.wav”聲音文件。請完成程序。
import java.applet.*;
public class C3001 extends Applet
{
public void start()
{
clip=getAudioClip(getCodeBase(),"2.wav");
.play();
}
} (2分)
四、程序分析題(本大題共5小題,每小題4分,共20分)
1. 閱讀下面程序,畫出程序運行后的布局設計。
import java.awt.*;
import javax.swing.*;
public class Class3501
{
public static void main(String[] args)
{
JFrame myWin=new JFrame("Class3501");
myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container con=myWin.getContentPane();
con.setLayout(new GridLayout(1,3));
JTextArea textA=new JTextArea("TextArea",3,5);
JScrollPane jsp=new JScrollPane(textA);
con.add(jsp);
JPanel jp=new JPanel();
jp.setLayout(new GridLayout(2,1));
JLabel label=new JLabel("JLabel");
JTextField text=new JTextField("Text");
jp.add(label);jp.add(text);
con.add(jp);
JButton button=new JButton("JButton");
con.add(button);
myWin.pack();
myWin.setVisible(true);
}
}
(4分)
2. 閱讀下面程序,寫出程序運行結果。
public class Class3302
{
static public void main(String args[])
{
int firstArray[]={1,2,3,4};
int secondArray[]={5,6,7,8,9,10};
int myArray[];
myArray=firstArray;
System.out.println("First Array:");
for(int index=0;index
{
System.out.println(myArray[index]);
}
myArray=secondArray;
System.out.println("Second Array:");
for(int index=0;index
{
System.out.println(myArray[index]);
}
}
} (4分)
3. 閱讀下面程序,寫出程序功能。
import javax.swing.*;
import java.awt.event.*;
public class Class3502 implements ActionListener
{
JMenuItem item1;
JMenuItem item2;
JTextField text;
public Class3502()
{
JFrame myWin=new JFrame();
JMenuBar menubar=new JMenuBar();
JMenu menu=new JMenu("Graph");
item1=new JMenuItem("Circle");
item2=new JMenuItem("Rect");
text=new JTextField(20);
myWin.add(text);
myWin.setJMenuBar(menubar);
menubar.add(menu);
menu.add(item1);
menu.add(item2);
item1.addActionListener(this);
item2.addActionListener(this);
myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
myWin.setBounds(100,100,200,200);
myWin.setVisible(true);
}
public void actionPerformed(ActionEvent e)
{
text.setText(e.getActionCommand());
}
public static void main(String[]args)
{
new Class3502();
}
} (4分)
4. 閱讀下列程序,寫出程序功能。
import javax.swing.*;
import java.awt.event.*;
public class Class3405 extends JFrame implements ActionListener
{
public JFrame mw1,mw2;
public Class3405()
{
JButton butt1=new JButton("我是一個按鈕");
butt1.setActionCommand("b1");
JButton butt2=new JButton("我是另一個按鈕");
butt2.setActionCommand("b2");
butt1.addActionListener(this);
butt2.addActionListener(this);
String name1="我的第一個窗口";
String name2="我的第二個窗口";
mw1=new JFrame(name1);mw1.setSize(500,500);
mw2=new JFrame(name2);mw2.setSize(300,300);
mw1.getContentPane().add(butt1);
mw2.getContentPane().add(butt2);
mw1.setVisible(true);mw2.setVisible(true);
}
public void actionPerformed(ActionEvent e)
{
boolean yesNo;
if(e.getActionCommand().equals("b1"))
{
yesNo=!mw2.isVisible();
mw2.setVisible(yesNo);
}
else
{
yesNo=!mw1.isVisible();
mw1.setVisible(yesNo);
}
}
public static void main(String[] args)
{
new Class3405();
}
} (4分)
5. 閱讀下列程序,寫出程序運行結果。
class A1
{
public void f(int aa,int bb)
{
System.out.println(aa+bb);
}
}
class A2 extends A1
{
public void f(int aa,int bb)
{
System.out.println(aa-bb);
}
}
public class C3201 extends A2
{
public void f(int aa,int bb)
{
System.out.println(aa*bb);
}
public static void main(String[] args)
{
A1 a=new A1();
A1 a1=new A2();
A2 a2=new C3201();
a.f(20,10);
a1.f(20,10);
a2.f(20,10);
}
} (4分)
五、程序設計題(本大題共2小題,每小題6分,共12分)
1. 設計一個應用程序的界面如下,功能是:拖動水平滑塊,在上面的標簽左邊顯示滑塊的當前值,范圍為100~200,起始點為140,滑塊寬
度為10。 (6分)
2. 編寫一個方法hex3704(),要求將一個十進制正整數n轉換成十六進制數,其中n為方法參數,十六進制數以字符串(如有字母用大寫)的
形式返回。 (6分)
六、簡答題(本大題共6小題,每小題3分,共18分)
1. Connection類在哪個包中?Connection對象的作用是什么? (3分)
2. 請寫出表示條件“x=2與y=3至少有一個成立”的Java表達式。 (3分)
3. 用一個Java語句完成下面的要求:
將變量A.b和c中最大的數值賦值給變量d。 (3分)
4. java.awt.event包中用來檢測并對事件做出反應的模型包括哪三個組成元素? (3分)
5. 寫出下面方法的功能和方法參數的含義。
fillRoundRect(int x,int y,int width,int height,int arcWidth,int arcHeight) (3分)
6. 控制聲音的播放有哪3個方法? (3分)
參考答案
一、單項選擇題 (本大題共10小題,每小題1分,共10分) 在每小題列出的四個備選項中只有一個是符合題目要求的,請將其代碼填寫在題后的括號內
。錯選、多選或未選均無分。
1:參考答案:B
參考解析:(P63)初始化,由瀏覽器載入內存時調用init()方法,該方法只運行一次。其用途是創建所需要的對象、設置初始
狀態、裝載圖像、設置參數等。
試題內容:
當啟動 Applet 程序時,首先調用的方法是()
A:stop()
B:init()
C:start()
D:destroy()
2:參考答案:C
參考解析:(P190)一個URL對象可以表示一個網絡資源,程序利用URL對象能實現Internet尋址、網絡資源的定位連接,在客戶機與服務器之間直接訪
問。URLConnection對象用來接收和發送信息,程序獲得一個URLConnection對象,相當于完成指
定URL的一個HTTP連接。InetAddress對象用于存儲IP地址和域名。TCP/IP是目前廣泛使用的一個協議族,是傳輸控制協
議和網際協議。
試題內容:
用于存儲IP地址和域名的對象是()
A:URL對象
B:URLConnection對象
C:InetAddress對象
D:TCP/IP對象
3:參考答案:D
參考解析:(P114)
試題內容:
建立一個把list字符串數組元素作為選擇條目的列表list1,可以使用的代碼是()
A:list1=JList(list)
B:JList list1=JList(list)
C:JList list=new JList(list1)
D:JList list1=new JList(list)
4:參考答案:B
參考解析:(P201)
試題內容:
處理驅動程序的加載和建立新數據庫連接的類是()
A:Connection類
B:DriverManager類
C:Statement類
D:ResultSet類
5:參考答案:D
參考解析:(P48)Java關于訪問權限設置后能否訪問的問題是這樣規定的:不管是哪種訪問權限,一個類中定義的方法,這個
類中所定義的別的方法都能訪問它,這個方法自己訪問自己也是可以的,那是遞歸。除了這個共性外,public類型的方法是類外的任何方法都能訪
問它,包括同包類和不同包類及不同包的子類;private類型的方法是類外的任何方法都不能訪問它,即只有定義此方法的類中所定義的方法才能訪
問它,別的類(即使是子類和同包類)所定義的方法都不能訪問它;protected類型的方法是類的子類和同包類能訪問它,而不是它的子類且不在同
一包中的類不能訪問它的;而沒有訪問權限修飾的是友好的,只有同類(即定義此方法的類)和同包的其它類才能訪問它,而其他類和不同包的子
類不能訪問這個方法。
試題內容:
在Java程序中定義一個類,類中有一個沒有訪問權限修飾的方法,則此方法()
A:類外的任何方法都能訪問它
B:類外的任何方法都不能訪問它
C:類的子類和同包類能訪問它
D:只有類和同包類才能訪問它
6:參考答案:C
參考解析:(P118)
試題內容:
在Java中,有關菜單的敘述錯誤的是()
A:下拉式菜單通過出現在菜單條上的名字來可視化表示
B:菜單條通常出現在JFrame的頂部
C:菜單中的菜單項不能再是一個菜單
D:每個菜單可以有許多菜單項
7:參考答案:C
參考解析:(P105)java.awt包是抽象窗口工具包,里面包括各種容器、組件、窗口布局管理器以及一些常用的類如Color、Font等;java.applet包里面
包括了小程序執行時必須要重載的一個類Applet,也只有這一個類;java.io包主要是提供一些輸入/輸出類的;java.awt.event包里面包括了一些能夠對
事件做出響應和處理的一些標準類。
試題內容:
在Java Applet程序中,如果對發生的事件做出響應和處理的時候,應該使用的語句是()
A:import java.awt.*;
B:import java.applet.*;
C:import java.awt.event.*;
D:import java.io.*;
8:參考答案:B
參考解析:(P160)Java提供一個線程調度器來監視和控制就緒狀態的線程。線程的調度策略采用搶占式,優先級高的線程比優先級低的線程優先執行
。在優先級相同的情況下,就按“先到先服務”的原則。線程的優先級繼承得到,也可在程序中重新設置。
試題內容:
在Java中,線程的調度策略采用()
A:分時式
B:搶占式
C:非分時式
D:非搶占式
9:參考答案:B
參考解析:(P10)本題考核知識點是Java基本數據類型—整數類型,0開頭的整數是八進制數,八進制數中能夠使用的數字只有0、1、……、7這八個;
0x開頭的整數是十六進制數,十六進制數中能夠使用的數字有0、1、……、9、A、B、C、D、E、F。
試題內容:
下列代碼中,錯誤的Java整型常量是()
A:007
B:008
C:0x3AA
D:0x3AB
10:參考答案:B
參考解析:(P179)
試題內容:
采用緩沖式輸出時,如果又想立即寫入到文件,則需要調用的方法是()
A:flash()
B:flush()
C:write()
D:read()
二、填空題 (本大題共10小題,每小題2分,共20分)請在每小題的空格中填上正確答案。錯填、不填均無分。
1:參考答案:(P175)字節流
試題內容:
ObjectOutputStream 是對象流;FileWriter 是字符流;FileInputStream是_____。
2:參考答案:(P168)線程的同步
試題內容:
當線程A使用某個對象,而此對象又需要線程B修改后才能符合A線程的需要,這時線程A就要等待線程B完成修改工作,這種線程相互等待
稱為_____。
3:參考答案:(P199)處理數據庫返回的結果
試題內容:
JDBC是java程序與數據庫連接的API,它可以與某個數據庫建立連接、向數據庫發送SQL語句和_____。
4:參考答案:(P10)0x
試題內容:
在Java語言中,整型常量有十進制、八進制和十六進制三種寫法,其中八進制是以數字字符0開頭,十六進制是以_____開頭。
5:參考答案:(P95)JScrollPane
試題內容:
_____是帶有滾動條的面板,它是一種容器,但是只能添加一個組件。
6:參考答案:(P79)tostring()
試題內容:
在Java語言中,一個對象通過調用_____方法可以獲得該對象的字符串表示。
7:參考答案:(P182)JFileChooser
試題內容:
在Java程序中如果需要使用打開文件對話框和保存文件對話框,則可以用javax.swing包中的_____類來實現。
8:參考答案:(P198)JDBC-ODBC橋接器
試題內容:
Java程序與數據庫連接方法有兩種。一種是使用_____與數據庫連接,另一種是用純Java的JDBC驅動程序實現與數據庫連接。
9:參考答案:(P63)repaint()
試題內容:
Java小應用程序中,為了在Java頁面上顯示動態效果,需要使用_____方法,該方法先清除paint()方法以前所畫的內容,然后再調用paint()方
法。
10:參考答案:(P148)終點
試題內容:
三次曲線(CubicCurve2D)的方法double()中的8個參數分別是三次曲線的始點、兩個控制點和_____。
三、程序填空題 (本大題共5小題,每空2分,共20分)
1:參考答案:contenPane=getContentPane()
mw[i].setVisible(true)
,
試題內容:
定義JFrame派生的子類MyWindowDemo創建JFrame窗口。類MyWindowDemo的構造方法有五個參數:窗口的標題名,加入窗口的組件,窗
口的背景顏色以及窗口的高度和寬度。在主方法中,利用類MyWindowDemo創建兩個類似的窗口并顯示出來。
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
class MyWindowDemo extends JFrame
{
public MyWindowDemo(String name,JButton but,Color c,int w,int h)
{
super();setTitle(name);setSize(w,h);
setLayout(new FlowLayout());
Container_____;
contenPane.add(but);
contenPane.setBackground(c);
}
}
public class Class2802
{
public static MyWindowDemo mw[];
public static void main(String[] args)
{
JButton butt1=new JButton("我是一個按鈕");
JButton butt2=new JButton("我是另一個按鈕");
String name1="我的`第一個窗口";
String name2="我的第二個窗口";
mw=new MyWindowDemo[2];
mw[0]=new MyWindowDemo(name1,butt1,Color.blue,350,450);
mw[1]=new MyWindowDemo(name2,butt2,Color.red,300,400);
for(int i=0;i<2;i++)_____;
}
}
2:參考答案:new JRadioButton
itemStateChanged
,
試題內容:
以下是生成單選按鈕對象,以及單選按鈕選擇事件處理方法的代碼。要求當選中computer單選按鈕時,在標簽label中顯示“計算機性能和
價格介紹:”的字樣。
…………
computer=new_____("計算機");//生成單選按鈕對象
computer.addItemListener(this);
…………
public void_____(ItemEvent e)
{
if(e.getItemSelectable()==computer)
{
label.setText(computer.getLabel()+"性能和價格介紹:");
}
}
3:參考答案:a=a+b;
b=a+b;
,
試題內容:
下面是一個求:1/1+1/2+2/3+3/5+5/8+8/13+13/21+21/32…前20項的和的程序段
float a=1,b=1,s=0;
for(int k=1;k<=10;k++)
{
s=s+a/b;
a=_____
s=s+b/a;
b=_____
}
System.out.println(s);
4:參考答案:public void run()
new Thread(t)
,
試題內容:
下面程序產生一個窗口,1秒后自動關閉。
public class Class3104 implements Runnable
{
_____
{
try
{
Thread.sleep(1000);
}
catch(InterruptedException e){}
System.exit(0);
}
public Class3104()
{
JFrame my=new JFrame();
my.setBounds(100,100,600,300);
my.setVisible(true);
}
public static void main(String[] args)
{
Class3104 t=new Class3104();
Thread tt=_____;
tt.start();
}
}
5:參考答案:AudioClip
clip
,
試題內容:
小應用程序啟動后自動播放一個“2.wav”聲音文件。請完成程序。
import java.applet.*;
public class C3001 extends Applet
{
public void start()
{
_____clip=getAudioClip(getCodeBase(),"2.wav");
_____.play();
}
}
四、程序分析題 (本大題共5小題,每小題4分,共20分)
1:參考答案:程序運行后的布局設計為:
試題內容:
閱讀下面程序,畫出程序運行后的布局設計。
import java.awt.*;
import javax.swing.*;
public class Class3501
{
public static void main(String[] args)
{
JFrame myWin=new JFrame("Class3501");
myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container con=myWin.getContentPane();
con.setLayout(new GridLayout(1,3));
JTextArea textA=new JTextArea("TextArea",3,5);
JScrollPane jsp=new JScrollPane(textA);
con.add(jsp);
JPanel jp=new JPanel();
jp.setLayout(new GridLayout(2,1));
JLabel label=new JLabel("JLabel");
JTextField text=new JTextField("Text");
jp.add(label);jp.add(text);
con.add(jp);
JButton button=new JButton("JButton");
con.add(button);
myWin.pack();
myWin.setVisible(true);
}
}
2:參考答案:程序運行結果:
First Array:
1
2
3
4
Second Array:
5
6
7
8
9
10
試題內容:
閱讀下面程序,寫出程序運行結果。
public class Class3302
{
static public void main(String args[])
{
int firstArray[]={1,2,3,4};
int secondArray[]={5,6,7,8,9,10};
int myArray[];
myArray=firstArray;
System.out.println("First Array:");
for(int index=0;index
{
System.out.println(myArray[index]);
}
myArray=secondArray;
System.out.println("Second Array:");
for(int index=0;index
{
System.out.println(myArray[index]);
}
}
}
3:參考答案:程序功能:在應用程序中產生一個Graph菜單一個文本框,菜單中有兩個菜單項Circle和Rect,當單擊Circle項時,
在文本框中顯示Circle,當單擊Rect時,在文本框中顯示Rect。
試題內容:
閱讀下面程序,寫出程序功能。
import javax.swing.*;
import java.awt.event.*;
public class Class3502 implements ActionListener
{
JMenuItem item1;
JMenuItem item2;
JTextField text;
public Class3502()
{
JFrame myWin=new JFrame();
JMenuBar menubar=new JMenuBar();
JMenu menu=new JMenu("Graph");
item1=new JMenuItem("Circle");
item2=new JMenuItem("Rect");
text=new JTextField(20);
myWin.add(text);
myWin.setJMenuBar(menubar);
menubar.add(menu);
menu.add(item1);
menu.add(item2);
item1.addActionListener(this);
item2.addActionListener(this);
myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
myWin.setBounds(100,100,200,200);
myWin.setVisible(true);
}
public void actionPerformed(ActionEvent e)
{
text.setText(e.getActionCommand());
}
public static void main(String[]args)
{
new Class3502();
}
}
4:參考答案:應用程序運行后,出現兩個窗口,每個窗口中各有一個按鈕,單擊其中的一個窗口的按鈕可使另一個窗口顯示和隱藏
。
試題內容:
閱讀下列程序,寫出程序功能。
import javax.swing.*;
import java.awt.event.*;
public class Class3405 extends JFrame implements ActionListener
{
public JFrame mw1,mw2;
public Class3405()
{
JButton butt1=new JButton("我是一個按鈕");
butt1.setActionCommand("b1");
JButton butt2=new JButton("我是另一個按鈕");
butt2.setActionCommand("b2");
butt1.addActionListener(this);
butt2.addActionListener(this);
String name1="我的第一個窗口";
String name2="我的第二個窗口";
mw1=new JFrame(name1);mw1.setSize(500,500);
mw2=new JFrame(name2);mw2.setSize(300,300);
mw1.getContentPane().add(butt1);
mw2.getContentPane().add(butt2);
mw1.setVisible(true);mw2.setVisible(true);
}
public void actionPerformed(ActionEvent e)
{
boolean yesNo;
if(e.getActionCommand().equals("b1"))
{
yesNo=!mw2.isVisible();
mw2.setVisible(yesNo);
}
else
{
yesNo=!mw1.isVisible();
mw1.setVisible(yesNo);
}
}
public static void main(String[] args)
{
new Class3405();
}
}
5:參考答案:運行結果:
30
10
200
試題內容:
閱讀下列程序,寫出程序運行結果。
class A1
{
public void f(int aa,int bb)
{
System.out.println(aa+bb);
}
}
class A2 extends A1
{
public void f(int aa,int bb)
{
System.out.println(aa-bb);
}
}
public class C3201 extends A2
{
public void f(int aa,int bb)
{
System.out.println(aa*bb);
}
public static void main(String[] args)
{
A1 a=new A1();
A1 a1=new A2();
A2 a2=new C3201();
a.f(20,10);
a1.f(20,10);
a2.f(20,10);
}
}
五、程序設計題 (本大題共2小題,每小題6分,共12分)
1:參考答案:程序如下:
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class Class3802 implements AdjustmentListener
{
JScrollBar myBar;
JLabel label;
public Class3802 (String s)
{
JFrame myWin=new JFrame(s);
Container con=myWin.getContentPane();
con.setLayout(new GridLayout(2,1));
myBar=new JScrollBar(JScrollBar.HORIZONTAL,140,10,100,210);
label=new JLabel(""+myBar.getValue());
myBar.addAdjustmentListener(this);
con.add(label);
con.add(myBar);
myWin.setSize(300,100);
myWin.setVisible(true);
}
public void adjustmentValueChanged(AdjustmentEvent e)
{
label.setText(""+e.getAdjustable().getValue());
}
public static void main(String[]args)
{
new Class3802 ("Class3802");
}
}
試題內容:
設計一個應用程序的界面如下,功能是:拖動水平滑塊,在上面的標簽左邊顯示滑塊的當前值,范圍為100~200,起始點為140,滑塊寬度
為10。
2:參考答案:String hex3704(int n)
{
int c[]=new int[8];
int i=0;
while(n>0)
{
c[i++]=n%16;
n=n/16;
}
String s[]={"A","B","C","D","E","F"},str="";
while(--i>=0)
{
str=str+(c[i]<10?c[i]:s[c[i]-10]);
}
return str;
}
[解析]完整的程序如下:
public class Class3704
{
static String hex3704(int n)
{
int c[]=new int[8];//整型n轉換成十六進制最多8位
int i=0;
while(n>0)
{
c[i++]=n%16;//余數按順序放入c數組
n=n/16;
}
String s[]={"A","B","C","D","E","F"},str="";
while(--i>=0)//逆序取c中數據,9以上轉化為大寫字母
{
str=str+(c[i]<10?c[i]:s[c[i]-10]);
}
return str;
}
public static void main(String[] args)
{
System.out.println(hex3704(269));
}
}
輸出結果:10D
試題內容:
編寫一個方法hex3704(),要求將一個十進制正整數n轉換成十六進制數,其中n為方法參數,十六進制數以字符串(如有字母用大寫)的形
式返回。
六、簡答題 (本大題共6小題,每小題3分,共18分)
1:參考答案:(P201)Connection類是java.sql包中用于處理與特定數據庫連接的類。
Connection對象是用來表示數據庫連接的對象,Java程序對數據庫的操作都在這個對象上進行。
試題內容:
Connection類在哪個包中?Connection對象的作用是什么?
2:參考答案:(P15)x==2&&y!=3||x!=2&&y==3||x==2&&y==3
試題內容:
請寫出表示條件“x=2與y=3至少有一個成立”的Java表達式。
3:參考答案:(P14)d=(a>b?a:b)>c?(a>b?a:b):c;或者d=a>b?a:b>c?a>b?a:b:c;
試題內容:
用一個Java語句完成下面的要求:
將變量A.b和c中最大的數值賦值給變量d。
4:參考答案:(P87)(1)源對象;(2)監視器對象;(3)事件對象。
[解析]在java.awt.event包中用來檢測并對事件做出反應的模型包括以下三個組成元素:(1)源對象:事件“發生”在這個組件上,它與一組“偵聽
”該事件的對象保持著聯系。(2)監視器對象:是一個實現預定義的接口的類的一個對象,該對象的類要提供對發生的事件作處理的方法。(3)事件對
象:它包含描述當事件發生時從源傳遞給監視器的特定事件的信息。
試題內容:
java.awt.event包中用來檢測并對事件做出反應的模型包括哪三個組成元素?
5:參考答案:(P141)功能是:用預定的顏色填充圓角矩形。
方法參數的含義是:x和y指定矩形左上角的位置,width和height是矩形的寬和高,arcWidth和arcHeight分別是圓角弧的橫向直徑和縱向直徑。
可以用畫圓角矩形方法畫圓形,當矩形的寬高相等,圓角弧的橫向直徑和圓角弧的縱向直徑也相等,并等于矩形的寬和高時,畫的就是圓形。
試題內容:
寫出下面方法的功能和方法參數的含義。
fillRoundRect(int x,int y,int width,int height,int arcWidth,int arcHeight)
6:參考答案:(P154)play()播放聲音,loop()循環播放和stop()停止播放。
試題內容:
控制聲音的播放有哪3個方法?
【Java語言程序設計試題及答案(九)】相關文章: