《JAVA程序设计》期末考试试题
Java是一种可以撰写跨平台应用程序的面向对象的程序设计语言。下面为大家整理的是java语言的期末考试题,希望能帮助到大家!
一、 单选题
1、下列程序段执行后的结果是( )。
String s = new String("abcdefg");
for (int i=0; i
System.out.print(s.charAt(i));
}
A) aceg B) ACEG C) abcdefg D) abcd
2、有整型数组:int[] x={12,35,8,7,2};,则调用方法Arrays.sort(x)后,数组x中的元素值依次是( ).
A) 2 7 8 12 35 B) 12 35 8 7 2
C) 35 12 8 7 2 D) 8 7 12 35 2
3、下面的程序段创建了BufferedReader类的对象in,以便读取本机c盘my文件夹下的文件1.txt。File构造函数中正确的路径和文件名的表示是( )。
File f = new File(填代码处);
file =new FileReader(f);
in=new BufferedReader(file);
A) "./1.txt" B) "../my/1.txt" C) "c:\\my\\1.txt" D) "c:\ my\1.txt"
4、应用程序的main方法中有以下语句,则输出的结果是 ( )。
String s1=new String("abc");
String s2=new String("abc");
boolean b1=s1.equals(s2);
boolean b2=(s1==s2);
System.out.print(b1+" "+b2);
A)true false B) false true C) true true D)false false
5、应用程序的main方法中有以下语句,则输出的结果是 ( )。
Hashtable hashtable=new Hashtable();
hashtable.put("x","12345");
hashtable.put("y","67890");
hashtable.put("a","abcde");
System.out.println(hashtable.get("a"));
A) a B) abcde C) 12345 D) 67890
6、下面语句的功能是( )。
RandomAccessFile raf2 = newRandomAccessFile("1.txt","rw" );
A)打开当前目录下的文件1.txt,既可以向文件写数据,也可以从文件读数据。
B)打开当前目录下的文件1.txt,但只能向文件写入数据,不能从文件读取数据。
C)打开当前目录下的文件1.txt,但不能向文件写入数据,只能从文件读取数据。
D) 以上说法都不对。
7、应用程序的main方法中有以下语句,则输出的结果是 ( )。
String s="12345#aaa#bbb#67890";
int n=s.indexOf("#");
int k=s.indexOf("#",n+1);
int m=s.indexOf("#",k+1);
String s2=s.substring(m+1);
System.out.println(s2);
A) 123456 B) 67890 C) aaa D) bbb
8、下面程序段执行后b的值是( )。
Integerinteg =new Integer(9);
boolean b = integ instanceof Object;
A) 9 B) true C) 1 D) false
9、应用程序Test.java的源程序如下,在命令行键入:
java Test aaa bb c
回车后输出的结果是 ( )。
public class Test {
publicstatic void main(String args[]) {
int k1=args.length;
int k2=args[1].length();
System.out.print(k1+" "+k2);
}
}
A) 3 2 B)1 2 C) 1 3 D)3 3
10、应用程序的main方法中有以下语句,则输出的结果是 ( )。
int b[][]={{1}, {2,2}, {2,2,2}};
int sum=0;
for(int i=0;i
for(int j=0;j
sum*=b[i][j];
}
}
System.out.println("sum="+sum);
A) 32 B)11 C) 2 D) 3
11、应用程序的main方法中有以下语句,则执行后输出的结果是 ( )。
int[] x={125,21,5,168,98};
int max=x[0];
for(int i=1;i
if(x[i]>max)
max=x[i];
}
System.out.println(max);
A) 125 B) 5 C) 98 D) 168
12、程序Test.java编译运行后输出的结果是( )。
public class Test {
Strings1="java";
publicstatic void main(String args[]) {
intz=2;
Testt=new Test();
System.out.println(t.s1+z);
}
}
A) java2 B)2 C)没有输出结果 D)java
13、应用程序的main方法中有以下语句,则输出的结果是 ( )。
Strings1="0.5", s2="12";
double x=Double.parseDouble(s1);
int y=Integer.parseInt(s2);
System.out.println(x+y);
A) 12.5 B) 120.5 C)12 D) “12.5”
14、下面的程序创建了一个文件输出流对象,用来向文件test.txt中输出数据,假设程序当前目录下不存在文件test.txt,编译下面的程序Test.java后,将该程序运行3次,则文件test.txt 的内容是( )。
import java.io.*;
public class Test {
publicstatic void main(String args[]) {
try{
Strings="ABCDE";
byteb[]=s.getBytes();
FileOutputStreamfile=new FileOutputStream("test.txt",true);
file.write(b);
file.close();
}
catch(IOExceptione) {
System.out.println(e.toString());
}
}
}
A) ABCABC B) ABCDE C) Test D) ABCDE ABCDE ABCDE
15、下面那些方法不是接口Collection中已声明的方法( )?
A)添加元素的add(Object obj) 方法
B)删除元素的remove(Objectobj)方法
C)得到元素个数的length()方法
D)返回迭代器的iterator()方法,迭代器用于元素遍历
二、多选题
1、下面main()方法的定义哪些是正确的( )?
A) publicstatic void main(String args[]) {} B) publicstatic void main(String[]) {}
C) publicstatic void main(String[] args) {} D)publicstatic void main(String [] x) {}
2、线程对象的生命周期中,通常经历下面哪些状态( )。
A)新建 B)运行 C)就绪 D)死亡
3、下面说法正确的是( )。
A) final 可修饰类、属性(变量)、方法。
B) abstract可修饰类、方法。
C) 抽象方法只有方法头,没有方法体。
D) 关键字final和abstract不能同时使用。
4、下面关于java中输入/输出流的说法正确的是( )。
A) FileInputStream与FileOutputStream类用读、写字节流。
B) Reader与Writer类用来读、写字符流。
C) RandomAccessFile既可以用来读文件,也可以用来写文件。
D) File类用来处理与文件相关的操作。
5、下面说法正确的是( )。
A)如果某公共接口被声明在一个源文件中,则接口必须与源文件具有相同名字。
B)如果源文件包含import语句,则该语句必须是除空行和注释行外的第一个语句行。
C)如果某源文件包含package语句,则该语句必须是第一个非空、非注释行。
D)接口中的方法必定是抽象方法,但可以不用关键字abstract修饰。
6、下面关于Java中异常处理try块的`说法正确的是( )?
A) try块后通常应有一个catch 块,用来处理try块中抛出的异常。
B) catch 块后必须有finally块。
C)可能抛出异常的方法调用应放在try块中。
D)对抛出的异常的处理必须放在try块中
7、下面关于进程、线程的说法正确的是( )。
A)进程是程序的一次动态执行过程。一个进程在其执行过程中,可以产生多个线程——多线程,形成多条执行线索。
B)线程是比进程更小的执行单位,是在一个进程中独立的控制流,即程序内部的控制流。线程本身不能自动运行,栖身于某个进程之中,由进程启动执行。
C)Java多线程的运行与平台相关。
D)对于单处理器系统,多个线程分时间片获取CPU或其他系统资源来运行。对于多处理器系统,线程可以分配到多个处理器中,从而真正的并发执行多任务。
8、关于BufferedReader类的readLine()方法,以下说法正确的是()。
A)方法readLine()每次读取一行数据。
B)方法readLine()每次读取一个字节。
C)该方法可能抛出IOException异常,调用该方法时通常应将它放到try块中,并通过catch块处理异常。
D)如果读到流的末尾,该方法返回的结果为null。
三、程序阅读题
1、阅读下面的程序,回答问题(u问3分,v问3分,共6分)。
import java.awt.*;
import javax.swing.*;
public class T extends JFrame {
public T ( ) {
super("GridLayout");
Container con=this.getContentPane();
con.setLayout(new GridLayout(2,3));
con.add(new JButton("a"));
con.add(new JButton("b"));
con.add(new JButton("c"));
con.add(new JButton("d"));
con.add(new JButton("e"));
con.add(new JButton("f"));
setSize(200, 80);
setVisible(true);
}
public static void main(String args[]) {
new T();
}
}
u画图表示程序运行后的图形界面。
v如果程序通过实现某个接口处理按钮的动作事件,则该接口名为何?接口中的方法头声明如何?
答案:
u
v接口名:ActionListener
接口中的方法:publicvoid actionPerformed(ActionEvent e)
2、阅读下面的程序,回答问题(u问3分,v问3分,共6分)。。
import java.util.*;
publicclass T {
public static void main(Stringargs[]) {
Set set = new TreeSet();
set.add(new Integer(10));
set.add(new Integer(5));
set.add(new Integer(15));
set.add(new Integer(5));
set.add(new Integer(10));
System.out.println("size =" + set.size());
Iterator it=set.iterator();
while(it.hasNext()){
System.out.print(it.next()+" ");
}
}
}
u程序运行后输出的结果如何?
v说明java中的集合(Set接口)和映射(Map接口)的主要区别。
答案:
u
size = 3
5 10 15
vSet接口是不包含重复元素的集合;Map接口将键映射到值,键可以重复,但每个键最多只能映射一个值。
3、阅读下面的程序,并回答问题(u问3分,v问3分,共6分)。
import java.io.*;
public class Test {
public static void main(String args[]) throws IOException {
BufferedReader buf=new BufferedReader(
newInputStreamReader(System.in));
while(true) {
String str=buf.readLine();
if(str.equals("quit"))
break;
int x=Integer.parseInt(str);
System.out.println(x*x);
}
}
}
编译运行上面的程序:
u从键盘输入5,回车后输出的结果如何?
v从键盘输入quit,回车后程序执行情况如何?
答案:
u25
v终止应用程序的运行。
【《JAVA程序设计》期末考试试题】相关文章: