湖南科技大学2021年计算机编程专业《Java语言程序设计(一)》课程期末考试试卷
班级 学号 姓名
一、单项选择题
1.编译Java应用程序源程序会产生字节码文件,字节码文件的扩展名为(B)
A..java B..class
C..html D..exe
2.表达式-1>>1的值是(B)
A.232-1 B.-1
C.216-1 D.2147483647
3.为类C定义一个int类型的变量x,使得只有同类和同包的其它类能使用代码C.x就可引用它,
则定义x的形式为(A)
A. static int x; B. public int x;
C. protected static int x; D. public static int x;
4. 设有字符串变量String s1="abc", s2=new String("abc"), 则以下表达式的值为true(D)
A. s1pareTolgnoreCase(s2) B. s1pareTo(s2)
C. s1==s2 D. s1.equals(s2)
5.在以下Swing的类中,属于容器的是(A)
A. JDialog B. JButton
C. JTextArea D. JList
6.在以下叙述中,属于CardLayout布局特点之一的是(D)
A.多个组件从上到下排列 B.容器只能放置一个组件
C.容器被分成网格状 D.多个组件拥有同一个显示空间
计算机专业java7.Java组件可以使用抽象类Toolkit提供的静态方法获得一个缺省的Toolkit对象,这个静态方法是(C)
A. getlmage(String name) B. getlmage(URL ur1)
C. getDefaultToolkit() D. getToolkit()
8.一个线程要从运行状态自动进入就绪状态,需要使用的方法是(C)
A.notify() B.sleep()
C.yield() D.wait()
9.程序将创建输入流的代码写在try-catch语句结构中,其目的是捕获并处理(C)
A.文件太长异常 B.打开文件太多异常
C.文件不到异常 D.文件含有病毒异常
10.在Java语言中,用来处理驱动程序的加载和建立新数据库连接的类是(A)
A. DriverManager B. Statement
C. Connection D. ResultSet
二、填空题
11.Java源文件中最多只能有一个 public 类,其他类的个数不限。
12.Java语言使用的字符集是 Unicode 。
13.在Java语言中,package语句必须出现在源程序文件的 起始行 。
14.以下代码的输出结果是 45 。
Integer x = 234567;
System.out.String().substring(2,4));
15.在Java程序中,设置文本区对象myArea能自动换行的语句是 myAreasetLineWrap(true); 。
16.Java语言为处理鼠标事件提供了多个接口,其中能处理鼠标拖动和鼠标移动两种事件的接口是 MouseMotionListener 。
17.Graphics2D类定义了多种图形的状态属性,其中用来控制线条的宽度、笔形样式、线段连接方式或短划线图案的属性是 stroke 。
18.当线程A使用某个对象,而此对象又需要线程B修改后才能符合A线程继续执行的要求,这时线程A就要等待线程B完成修改工作,这种线程相互等待称为 线程的同步 。
19.使用RandomAccessFile类的 writeChar() 方法可以向文件写入一个字符。
20.使用语句对象作数据库查询,能获得带游标的结果集ResultSet对象,此对象中将游标移到最后一行之后的方法是 afterLast() 。
三、简答题
21.请写出“条件x=2与y=3有且只有一个成立”的表达式。
答:x==2&&y!=3||x!=2&&y==3 (或 x==2!=y==3)
22.以下代码定义了一个类,请用注释中的编号指出其中有错的代码行。
class Test22{int x;
Test22(int x){this.x=x;}) //1
Test22(){Test22(10);} //2
int f(){ //3
inta=1; x=a; //4
void g(){ int y; //5
y=a+x; //6
}
}
答:2、3、6
23.请写出在java.awt.event中,用来检测并对事件做出反应的模型所包括的三种对象。
答:源对象、监视器对象和事件对象。
24.请写出在Java语言中,关键字synchronized的作用。
答:使用关键字synchronized定义临界段,能对共享对象的操作上锁。
25.请写出采用缓冲式输入方式,按行输入文件内容的步骤。
答:先创建FileReader对象,再利用FileReader对象创建BufferedReader对象,然后对该对象使用readLine()方法。
26.已知服务器的IP地址为host,端口号为port,请写出为客户端建立到服务器的套接字对象mySocket的代码(可能发生的例外类型为IOException)。
答:try{
Socket mySocket: new Socket(host, port);
}catch(IOException e){ }
四、程序填空题
27.方法int countDigitNum(int[]a,d)的功能是求己知数组a中元素值为d的个数。
static int countDigitNum(int []a, d){
int s=0;
for(int i=0; i<a.length< span=""> ; i++){</a.length<>
if( a[i]==d ) s++;
}
return s;
}
28.面板子类MyPanel实现在面板上放置一个单选列表框,列表框上的选项条目由创建该类对象时的参数提供。当某个选项被单击时,类的监视程序在指定的文本框中输出选中选项条目。程序将单选列表框放置于滚动面板中,并要求滚动面板的垂直滚动条总是可见。以下是类MyPanel的定义。
class MyPanel extends JPanel implements ListSelectionListener {
JList list; JTextField t~;
MyPanel(String listItems[], JTextField tf) {
this.tf = tf;
list = new JList(listitems); list.setVisibleRowCount(2);
list.setSelectionMode(ListSelectionModel. S]NGLE_SELECTlON);
list. addListSelectionListener(this);
JScrollPane jsp = new JScrollPane(list);
jsp.setVerticalScrollBarPolicy(JScrollPane. VERTICAL SCROLLBAR ALWAYS );
add(jsp);
}
public void valueChanged(ListSelectionEvent e) {
Source0 == list) {
tf. setText(list. getSelectedValue() + ":被选中\n");
}
}
}
29.面板子类MyPanel实现在面板监视鼠标单击事件,当鼠标在面板上单击时,面板的背景就会循环改变。以下是类MyPanel的定义。
class MyPanel extends JPanel implements MouseListener {
int index = 0;
Color bgColorA[] -- { d, llow, Color.blue };
MyPanel(){
addMouseListener(this); index = 0;
}
public void mousePressed(MouseEvent e) { }
public void mouseReleased(MouseEvent e) { }
public void mouseEntered(MouseEvent e) { }
public void mouseExited(MouseEvent e) { }
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论