Java语言程序设计(一)自考2008年10月真题及答案解析
-
一个Java小应用程序,界面有三个文本框和两个按钮,前两个文本框用于输入整数,第三个文本框用于输出结果。两个按钮分别表示加和减运算。当前两个文本框输入整数后,点击相应按钮,程序就将计算结果输出在第三个文本框中。以下是程序的大部分,其中监视按钮事件的方法未给出,试编写处理按钮事件的方法。注:这里是给定部分的程序,你要编写的是actionPerformed(ActionEvent e)方法。
-
编写一个方法halfArray( ),要求该方法有一个元素类型为int的数组参数,方法返回一个新数组,新数组的长度与参数数组的长度相同,而新数组元素的值是参数数组各元素的一半。
-
小应用程序创建一个线程。例子使用容器类方法getGraphics( )获得Graphics对象,给线程作为画笔使用。
请写出该程序中这个线程的工作内容。
-
阅读以下程序,请写出该程序的功能。
-
阅读下列程序,请写出该程序的功能。
import java.applet.*; import javax.swing.*; import java.awt.event.*;
public class Class l extends Applet implements ActionListener {
JTextField text1,text2;
public void init( ) {
text1=new JTextField(10); text2=new JTextField(10);
setSize(200,100); add(text1); add(text2);
text1.addActionListener(this);
}
public void actionPerformed(Action Event e) {
long n;
if(e.getSource( )==text1) {
n=Long.parseLong(text1.getText( ));
text2.setText(String.valueOf(n*n));
}
}
}
-
阅读下列程序,请写出该程序的功能。
import java. util.*;
public class Class1 {
public static void main(Srting args[ ]) {
Date date1=new Date( );
System. out. println (datel);
String t=datel.toString( );
int endPos=t.indexOf('C');
t=t.substring(11,endPos);
System. out println(t);
}
}
-
阅读下列程序,请写出该程序的输出结果。
-
以下定义的类shareDataManager用于管理多个线程共享数据data。一些线程要减少data,另一些线程要增加data。由于data不可以是负值,修改data的方法对这些线程来说不仅要互斥,还要同步。类提供一个方法modiData( )供修改data的线程调用,该方法在data修改结束后,应通知其它等待进入这个方法的线程。
-
以下是生成菜单项对象,以及菜单项选择事件处理方法的部分代码。要求当菜单项singingItem被选中时,在文本框text中输出“唱歌菜单项被选中!”的字样。
……
singingItem=new________("唱歌"); //生成菜单项对象
……
public void actionPerformed(ActionEvent e) {
if(e.getSource( )==singingItem)
text.setText(e.________( )+ "菜单项被选中!");
}
-
某小应用程序实现幻灯片放映。小应用程序的init( )方法将幻灯片读入数组中存储和注册鼠标监视器。程序运行时,单击鼠标,就顺序变换放映幻灯片的序号。这里给出的是其中的paint( )方法和mousePressed( )方法。
final int number=30; //假定幻灯片有30张
int count=0;
Image[ ]pic=new Image[number];
public void paint(______gc) {
if((pic[count])!=null)
gc.drawImage(pic[count],10,10,pic[count].getWidth(this),
pic[count].getHeight(this),this);
}
public void mousePressed(MouseEvent e) {
count=(count+1)% number; //循环逐张显示
__________;
}
-
方法int maxDigit(int n)的功能是找出十进制整数n各位中最大的一位数字。例如,n=23765,该方法的返回值是7。
static int maxDigit(int n) {
int c=0,d;
while(n>0) {
d=_______;
if(d>c) c=d;
n/=10;
}
________;
}
-
某程序的界面包含一个文本区text1、一个文本框text2和一个按钮button。实现在文本区中输入整数序列后,点击按钮,程序响应按钮事件,累计文本区输入的整数序列,并将总和输出在文本框中。这里给出的是其中相应按钮事件的方法。
-
JDBC是Java程序与数据库连接的API,请写出JDBC能做的三件事情。
-
请写出一条语句,能够绘制一条从点(20,30)开始,长为100像素的水平线段。设调用的对象是类型为Graphics的g。
-
某Java程序要使用文件输入输出流,请写出该程序所需要的import语句。
-
如果类Student是类Person的子类,类Undergraduate是类Student的子类,请指出以下代码行中哪些是不合法的。
Person p1=new Student( );
Person p2=new Undergraduate( );
Student s1=new Person( );
Student s2=new Undergraduate( );
Undergraduate ug1=new Person( );
Undergraduate ug2=new Student( );
Object ob=new Student( );
-
请写出程序处理文本框输入结束事件(回车)添加监视器的方法,以及监视器类必须实现的接口方法。
-
请写出表示条件“x=2与y=3有且只有一个成立”的Java表达式”。
-
BufferedWriter类是提供缓冲式输出的类。程序需要先创建_________对象,再利用这个对象创建BufferedWriter对象。
-
在Java语言中,客户端使用的套接字类是_________。
-
某个绘图方法设置成“异或模式”绘图,并用黄色作为异或模式设定的绘图颜色。如果当时背景色为红色,并用红色绘制线段,则线段的实际颜色是_________。
-
程序员用Java语言编写多线程应用程序,程序员能控制的关键性工作有两个方面:一是编写线程的_________方法;二是建立线程实例。
-
_________布局使容器的多个组件拥有同一个显示空间,某一时刻只能显示一个组件。
-
Java语言为处理鼠标事件提供两个接口:_________接口和MouseMotionListener接口。
-
设有数组a和b的定义如下:
int[]a={1,2,3}; int[]b={4,5,6}
……
执行以下代码“a=b;”,除了完成赋值操作之外,引起系统额外要做的工作是_________。
-
类是对一组相同对象的描述,类概括了同类对象的共有性质:_________。
-
用条件运算符构造一个表达式:goal等于10时,表达式的值为“对了!”,否则,表达式的值为“错了!”。这个表达式是_________。
-
一个小应用程序必须定义成一个_________。
-
能利用对象提供的方法获得流对象和实现网络连接的是( )
- A.URLConnection对象
- B.URL对象
- C.InetAddress对象
- D.TCP/IP对象
-
为16位Unicode字符流提供读和写操作支持的类分别是( )
- A.FileInputStream类和FileOutputStream类
- B.InputStream类和OutputStream类
- C.FileReader类和FileWriter类
- D.File_Reader类和File_Writer类
-
以下所述内容全部是字型要素的是( )
- A.字体、字形和大小
- B.字体、风格和字号
- C.字形、风格和字号
- D.字形、颜色和字号
-
用Thread子类实现多线程的步骤顺序是( )
- A.声明Thread类的子类,创建Thread子类的实例,让线程调用start( )方法
- B.声明Thread类的子类,在子类中重新定义run( )方法,创建Thread子类的实例
- C.创建Thread子类的实例,让线程调用start( )方法
- D.声明Thread类的子类,在子类中重新定义run( )方法,创建Thread子类的实例,让线程调用start( )方法
-
以下关于菜单的叙述中,正确的是( )
- A.菜单分三级定义,最高一级的是菜单条,菜单条中放菜单,菜单中放菜单项
- B.菜单分三级定义,最高一级的是菜单,菜单中放菜单条,菜单条中放菜单项
- C.菜单分两级定义,最高一级的是菜单,菜单中放菜单项
- D.菜单分两级定义,最高一级的是菜单条,菜单条中放菜单项
-
要为程序的子窗口设定一个由字符串s指定的名字,可以采用的代码是( )
- A.JFrame(s)
- B.window(s)
- C.new JFrame(s)
- D.super(s)
-
下述字符组合不能作为Java程序标识符的是( )
- A.Aa12
- B.大x
- C.y小
- D.5x
-
参照以下Java代码,以下四个叙述中最确切的是( )
class A{
int x; static int y;
void fac(String s) { Syatem. out. println("字符串:"+s); }
}
- A.x、y和s都是成员变量
- B.x是实例变量、y是类变量、s是局部变量
- C.x和y是实例变量、s是参数
- D.x、y和s都是实例变量
-
以下程序代码的输出的结果是( )
int x=53;
System. out. println(1.0+x/2);
- A.27.0
- B.27.5
- C.1.026
- D.1.026.5