第1、2章 在线单元测验
返回
倒计时: 59:49
1
单选(2分)
以下叙述中,错误的是_______________。
-
A.
(D)char占用2个字节,数据表示范围是\u0000~\uffff。
-
B.
(C)char占用1个字节,数据表示范围是0~255。
-
C.
(B)short占用2个字节,数据表示范围是-32768~32767。
-
D.
(A)byte占用1个字节,数据表示范围是-128~127。
2
单选(2分)
已知x=2.5,a=7,y=4.22,则表达式x+a%3*(int)x%(int)y的值为__________。
-
A.
4.5
-
B.
3.5
-
C.
2.5
-
D.
5.5
3
单选(2分)
__________________表达式的运算结果是’b’。
-
A.
(char)(‘c’-1)
-
B.
‘a’+1
-
C.
“a”+1
-
D.
(char)‘a’+1
4
单选(2分)
以下数组声明错误的是__________________。
-
A.
int[] a;
-
B.
int a[3];
-
C.
int a[]=new int[3];
-
D.
int a[]={1,2,3};
5
单选(2分)
以下二维数组声明正确的是__________________。
-
A.
int x[4][]={{1,2,3,4}};
-
B.
int x[][]={{1,2},{0},{3,4,5}};
-
C.
int x[2][3]={1,2,3,4,5,6};
-
D.
int[][] x={1,2,3,4,5,6};
6
单选(2分)
下列声明语句,正确的是______________。
-
A.
String s; s[0]=‘a’;
-
B.
String s=‘a’;
-
C.
String s=‘a’+“”;
-
D.
String s=‘’;
7
单选(2分)
Java应用程序从__________方法开始执行。
-
A.
void main()
-
B.
int main()
-
C.
void main(String[] args)
-
D.
int main(String[] args)
8
填空(2分)
Java采用__________技术实现跨平台特性。
请输入答案
9
填空(2分)
设一个Java源程序文件中声明多个类如下,则该文件名是__________,编译后生成的文件有_________________________________。
class Hello
public class Welcome
//多个答案之间用中文逗号“,”分隔。
请输入答案
10
填空(2分)
Java默认导入的包是__________________。
请输入答案
11
填空(2分)
声明将当前java文件中的类存放在mypackage包中的语句是___________。
请输入答案
12
填空(2分)
导入mypackage包中Point类的语句是_________________。
请输入答案
13
填空(2分)
设int month=12;,表示“month月的下月”的表达式是_____________________。
请输入答案
14
填空(2分)
设byte b=127;,表达式b+“+1=”+(++b)的运算结果是__________。
请输入答案
15
填空(2分)
表达式125&10的值是___________,表达式125 | 10的值是____________。
//多个答案之间用中文逗号“,”分隔。
请输入答案
16
填空(2分)
Java用__________表示“真”,用_________表示“假”,它们属于___________类型。
//多个答案之间用中文逗号“,”分隔,下同。
请输入答案
17
填空(2分)
Java语言使用的字符集是______________。
请输入答案
18
填空(2分)
设char ch;,判断ch是一个英文字母(小写或大写)的表达式是_________________。
//答案表达式中,逻辑运算符两边各有一个空格。
请输入答案
19
填空(2分)
已知radix进制范围是2~16,数字集合是{‘0’~’9’, ‘a’~’f’};设int i表示radix进制的一个数字值,将i转换成radix进制数字字符的条件表达式是_______________。
//答案表达式中,逻辑运算符和条件运算符两边各有一个空格。
请输入答案
20
填空(2分)
求n的数字和。程序填空。
public static int digitSum(int n) //返回n的数字和
{
int digsum=0;
while(n>0)
{ digsum += ______________ //获得个位
_______________________
}
return digsum;
}
//多个答案之间用中文逗号“,”分隔。
请输入答案
21
填空(2分)
设int a[]=new int[5], b[]=a; 执行语句b[0]=99;后,a[0]元素值是____________。
请输入答案
22
填空(2分)
设String s=“Hello”,执行求子串的________________________语句使s变为"elloH"。
请输入答案
23
填空(2分)
已知’汉’的编码是27721,设int i=27721;,表达式"(char)“+i+”=‘“+ch+”’"的运行结果是____________。
请输入答案
24
填空(2分)
**【实验2-3】一维整数数组程序填空。**
//在排序x数组中,顺序查找首次出现的与key相等元素,若查找成功返回序号,否则返回-1
public static int searchSorted(int[] x, int key)
{
int i=0;
while(__________________) //表达式中没有空格
i++;
return i<x.length && x[i]==key? i : -1;
}
请输入答案
25
填空(2分)
已知
//在x数组中顺序查找首次出现的与key相等元素,若查找成功返回序号,否则返回-1
public static int search(int[] x, int key)
以下一维整数数组程序填空。
//生成n个互异随机数,范围是1~range-1,不可重复且不包含0,返回一维整数数组
public static int[] differentRandom(int n, int range)
{
int x[]=new int[n], i=0;
while(i<n)
{ int key=(int)(Math.random()*range); //Math.random()返回0~1间的double随机数
if(key!=0 _____________________________) //若顺序查找不成功,表达式中没有空格
x[i++] = key;
}
return x;
}
1
单选(2分)
当未用权限修饰符声明类的成员时,Java认为该成员的访问权限为_______。
-
A.
public
-
B.
private
-
C.
protected
-
D.
缺省
2
单选(2分)
以下Student类声明正确的是____________。
-
A.
abstract class Student extends Person
-
B.
protected class Student extends Person
-
C.
private class Student extends Person
-
D.
final class Student extends Person,Object
3
单选(2分)
关于继承原则,以下叙述正确的是____________。
-
A.
子类继承了父类中可被子类访问的成员变量和成员方法。也就是说,子类没有继承父类的private成员和不同包的默认成员。
-
B.
子类构造方法中需要调用父类的构造方法,对父类的成员变量进行初始化。
-
C.
子类继承了父类全部成员变量和成员方法,但只能访问public、protected和同一包的缺省权限成员,不能访问private成员。
-
D.
在子类构造方法中,无条件地调用父类无参数的构造方法。
4
单选(2分)
一个类与其父类私有成员的关系,正确的叙述是_______________。
-
A.
一个类可以使用super引用父类的私有成员
-
B.
一个类不能继承父类的私有成员
-
C.
一个类可以重定义父类的私有成员
-
D.
一个类可以删除父类的私有成员
5
单选(2分)
设Person类有私有成员变量name,Student是Person的子类,在Student类中以下引用错误的是______。
-
A.
super(name)
-
B.
super()
-
C.
super.toString()
-
D.
super.name
6
单选(2分)
以下声明不正确的是________________。
-
A.
Object obj=new Object();
-
B.
Object obj=new Person();
-
C.
Person per=new Object();
-
D.
Person per=new Person();
7
单选(2分)
下列类声明正确的是_________________。
-
A.
class ClosedFigure { abstract void print(){} }
-
B.
abstract class ClosedFigure { abstract void print(){} }
-
C.
class ClosedFigure { abstract void print(); }
-
D.
public abstract class ClosedFigure { abstract void print(); }
8
单选(2分)
以下有关this引用使用规则说明错误的是_______________。
-
A.
调用本类重载的构造方法
-
B.
访问本类的成员变量和成员方法
-
C.
指对象本身
-
D.
调用父类重载的构造方法
9
单选(2分)
Person类的下列方法中,_______________将覆盖其父类的equals(…)方法。
-
A.
boolean equals(Object obj)
-
B.
public Boolean equals(Object obj)
-
C.
public boolean equals(Object obj)
-
D.
public boolean equals(Person p)
10
多选(3分)
已知Person类声明older(Person)方法,Student是Person的子类,声明以下对象,则以下调用正确的是(多选)_________。
Object obj=new Person(…);
Person p=new Person(…);
Student s1=new Student(…), s2=new Student(…);
-
A.
s1.older(s2)
-
B.
p.older(obj)
-
C.
p.older(s1)
-
D.
s1.older§
11
多选(3分)
在main()方法中,以下声明错误的是(多选)____________。
-
A.
final int i;
-
B.
private int i=0;
-
C.
static int i=0;
-
D.
protected int i;
12
填空(2分)
Person类的默认构造方法声明是____________。
请输入答案
13
填空(2分)
一个类如果没有声明父类,那么它的父类是_________________________类(包括包名)。
请输入答案
14
填空(2分)
Java为Person类提供的默认构造方法的方法体是________________。
请输入答案
15
填空(2分)
new Object() instanceof Person运算结果是_________________。
请输入答案
16
填空(2分)
设Student是Person的子类,调用语句如下,p==s的运算结果是________________。
Student s=new Student(“胡小东”, new MyDate(1982,4,3), “计算机”);
Person p=s;
System.out.println(“p:”+p.toString()+“,s:”+s.toString()+",ps?"+(ps));
请输入答案
17
填空(2分)
如果Person类声明以下方法,则它们是_______________关系。
public boolean equals(Person per)
public boolean equals(Object obj)
请输入答案
18
填空(2分)
如果Person类声明equals(Person)方法,调用语句如下:
Person per1 = new Person(“李小明”, new MyDate(1994,3,15));
Person per2 = new Person(per1);
per1.equals(per2) //执行______类的equals()方法,运算结果是____________
Object obj = per2;
per1.equals(obj) //执行______类的equals()方法,运算结果是____________
//多个答案之间用中文逗号“,”分隔。
请输入答案
19
填空(2分)
已知Person类覆盖equals(Object)方法,方法体见教材。调用语句如下。
Person per = new Person(“李小明”, new MyDate(2004,9,1));
Object obj = new Person(per);
obj.equals(per) //运算结果是____________
obj = new Object();
obj.equals(per) //运算结果是____________
per.equals(obj) //运算结果是____________
//多个答案之间用中文逗号“,”分隔。
请输入答案
20
填空(2分)
已知Student类继承Person类并覆盖equals(Object)方法,方法体见教材。调用语句如下:
Person per = new Person(“李小明”, new MyDate(2004,9,1));
Student stu1 = new Student(per, “计算机”), stu2 = new Student(per, “计算机”);
per.equals(stu1) //①运算结果是____________
stu1.equals(per) //②运算结果是____________
stu2.equals(stu1) //③运算结果是____________
//多个答案之间用中文逗号“,”分隔。
请输入答案
21
填空(2分)
replaceAll(objs[], key, x)方法,程序填空。
//将objs对象数组中所有与key匹配的对象替换为x,当x==null时,即删除匹配元素算法
public static void replaceAll(Object objs[], Object key, Object x)
{
if(objs!=null && key!=null)
for(int i=0; i<objs.length; i++)
if(_________________)
objs[i]=x;
}
请输入答案
22
填空(2分)
replaceAll(objs[], key, x)方法,调用填空。
调用语句如下:
Object[] objs={new Object(), “abc”, “xyz”};
ObjectArray.print(objs);
ObjectArray.replaceAll(objs, new Object(), “abc”);
ObjectArray.print(objs);
程序运行结果如下:
java.lang.Object@1db9742,abc,xyz
________________________________
请输入答案
23
填空(2分)
子类不能覆盖父类中声明为______________的方法。
请输入答案
24
填空(2分)
声明方法如下:
public static void swap(Object x, Object y)
{ Object temp=x;
x=y;
y=temp;
}
调用语句如下:
String str1 = “abc”;
String str2 = “xyz”;
swap(str1, str2);
【问】执行上述调用语句后,str1=,str2=____。
//多个答案之间用中文逗号“,”分隔。
请输入答案
25
填空(2分)
声明方法如下:
//交换objs数组第i、j元素值,数组元素类型是引用类型
public static void swap(Object[]objs, int i, int j)
{
if(objs!=null && i>=0 && i<objs.length && j>=0 && j<objs.length && i!=j)
{
Object temp = objs[j];
objs[j] = objs[i];
objs[i] = temp;
}
}
调用语句如下:
Integer[] values={1,2,3,4,5};
swap(values,1,3);
【问】执行上述调用语句后,values值是________________________________。
请输入答案
26
填空(2分)
已知Student类继承Person类的equals(Object)方法,调用语句如下:
Person per = new Person(“李小明”, new MyDate(2004,9,1));
Student stu1 = new Student(per, “计算机”), stu2 = new Student(per, “通信工程”);
per.equals(stu1) //运算结果是____________
stu1.equals(per) //运算结果是____________
stu2.equals(stu1) //运算结果是____________
//多个答案之间用中文逗号“,”分隔。
请输入答案
27
填空(2分)
Person类声明以下方法:
public int getAge(int year) //返回当前对象在year年份的年龄
{
_________________________ //答案没有空格,不省略this
}
请输入答案
28
填空(2分)
Person类声明以下方法:
public int older(Person per) //按年龄比较Person对象大小,返回this与per对象出生年份的差值
{
_________________________ //答案没有空格,不省略this
}
请输入答案
29
填空(2分)
已知Person类声明以下成员方法:
public int getAge() //返回this对象今年的年龄
实现PersonArray类声明的以下方法。
public static double average(Person[] pers) //返回Person对象数组元素的平均年龄,若pers数组空,则返回0
{
double sum=0;
for(int i=0; i<pers.length; i++)
_________________________ //答案没有空格
return pers.length>0 ? sum/pers.length: 0;
}
1
单选(2分)
关于接口概念,下列叙述错误的是_____________________。
-
A.
接口中都是抽象方法。
-
B.
可以声明接口对象。
-
C.
可以声明一个接口的访问权限为private。
-
D.
一个接口可以继承多个接口,但不能继承类。
2
单选(2分)
下列声明中,能够使用new A()的是_______________。
-
A.
abstract interface A
-
B.
final class A
-
C.
abstract class A
-
D.
interface A
3
单选(2分)
以下声明正确的是____________。
-
A.
class A implements java.lang.Math
-
B.
class A extends java.lang.Comparable
-
C.
class A extends java.lang.Math
-
D.
class A implements java.util.Comparator
4
单选(2分)
设Object obj=new Object();,执行String str=(String)obj;,将会抛出__________异常。
-
A.
StringIndexOutOfBoundsException
-
B.
ArrayIndexOutOfBoundsException
-
C.
ClassCastException
-
D.
NegativeArraySizeException
5
单选(2分)
当不能将字符串转换成数值类型时会抛出________________异常。
-
A.
ArithmeticException
-
B.
UnsupportedOperationException
-
C.
NumberFormatException
-
D.
NullPointerException
6
单选(2分)
设String str=“”,执行char ch=str.charAt(0);语句,将会抛出________________异常。
-
A.
ArrayIndexOutOfBoundsException
-
B.
StringIndexOutOfBoundsException
-
C.
NegativeArraySizeException
-
D.
ClassCastException
7
单选(2分)
下列有关内部类的叙述中,错误的是_______________。
-
A.
内部类可以声明实现接口
-
B.
可以声明内部接口
-
C.
内部类的访问权限不能声明为private
-
D.
内部类可以声明为抽象类
8
多选(3分)
以下获得当前日期时间,正确的是(多选)____________。
-
A.
new java.util.Calendar()
-
B.
System.currentTimeMillis()
-
C.
new java.util.Date()
-
D.
java.util.Calendar.getInstance()
9
填空(2分)
已知Area接口声明area()方法,程序填空。
public static double average(Area[] areas) //返回Area接口对象数组按面积计算的平均值
{
double sum=0;
for(int i=0; i<areas.length; i++)
_________________________________
return areas.length>0 ? sum/areas.length: 0;
}
请输入答案
10
填空(2分)
已知java.lang.Math类声明以下成员变量,该成员变量的引用形式是___________。
public static final double PI = 3.14159265358979323846; //静态成员常量PI表示π
请输入答案
11
填空(2分)
已知java.lang.Math类声明以下方法;返回0~99之间int随机数的方法调用是__________________。
public static double random() //返回一个0.0~1.0之间的随机数
请输入答案
12
填空(2分)
Integer.parseInt(String s)方法的返回值类型是___________。
请输入答案
13
填空(2分)
java.lang.System类currentTimeMillis()方法的返回值类型是_______________。
请输入答案
14
填空(2分)
new java.util.Date().getClass().getSuperClass().getName()的执行结果是(包含包名)__________。
请输入答案
15
填空(2分)
new java.util.Date().getClass().getSuperClass().getPackage().getName()的执行结果是(包含包名)____________。
请输入答案
16
填空(2分)
以下声明,源程序文件名是__________________,编译后生成的文件名是___________________。
public interface Solid extends Area,Volume
//多个答案之间用中文逗号“,”分隔。
请输入答案
17
填空(2分)
已知Area接口声明area()方法,程序填空。目的:接口委托模型。
public static Area max(Area[] areas) //返回Area接口对象数组的面积最大值对象
{
int max=0; //记载最大值对象的下标
for(int i=1; i<areas.length; i++)
_________________________________ //发现更大者
max = i;
return areas[max]; //返回对象引用
}
请输入答案
18
填空(2分)
已知Person类声明实现可比较接口,按出生日期比较对象大小。程序填空。
public static Person youngest(Person[] pers) //返回pers对象数组元素年龄最小者(出生日期最大)
{
int min=0; //记载最小值对象的下标
for(int i=1; i<pers.length; i++)
___________________________ //发现年龄更小者,即出生日期更大者,委托模型
min = i;
return pers[min]; //返回对象引用
}
请输入答案
19
填空(2分)
声明比较器类如下,按出生日期比较Person对象大小,程序填空。
import java.util.Comparator;
public class BirthdateComparator implements Comparator
{
public int compare(Person p1, Person p2)
{
if(per1==per2) //若引用同一个实例,则相等
return 0;
___________________________ //按出生日期比较Person对象大小
}
}
请输入答案
20
填空(2分)
声明比较器类如下,按出生日期比较Person对象大小,程序填空。
import java.util.Comparator;
public class BirthdateComparator implements Comparator
{
public int compare(Person p1, Person p2)
{
if(per1==per2) //若引用同一个实例,则相等
return 0;
___________________________ //按出生日期比较Person对象大小
}
}
请输入答案
21
填空(2分)
声明学号比较器类如下,按学号比较Student对象大小,程序填空。
public class NumberComparator implements Comparator //学号比较器类
{
public int compare(Student str1, Student str2)
{
___________________________ //按学号比较Student对象大小
}
}
请输入答案
22
填空(2分)
已知Area接口声明area()方法,程序填空。
//返回Area接口对象数组的面积最小值对象,委托comp比较器比较Area对象大小
public static Area min(Area[] areas, Comparator comp)
{
int min=0; //记载最小值对象的下标
for(int i=1; i<areas.length; i++)
_________________________________ //发现更小者
min = i;
return areas[min]; //返回对象引用
}
JTextArea能够响应的事件是_________________________。
-
A.
ChangeEvent
-
B.
CaretEvent
-
C.
ActionEvent
-
D.
WindowEvent
2
单选(2分)
不能添加到JMenu的菜单组件是____________。
-
A.
JMenu
-
B.
JCheckboxMenuItem
-
C.
JPopupMenu
-
D.
JMenuItem
3
单选(2分)
以下______________类的对象可以作为new Thread(…)的参数。
-
A.
public class NumberThread implements Thread
-
B.
public class NumberRunnable extends Runnable
-
C.
public class NumberThread extends Thread
-
D.
public class NumberRunnable implements Runnable
4
单选(2分)
执行Thread.sleep()方法,线程进入_____________态。
-
A.
NEW
-
B.
RUNNABLE
-
C.
TERMINATED
-
D.
TIMED_WAITING
5
多选(3分)
JTextField能够响应的事件是(多选)_________________________。
-
A.
WindowEvent
-
B.
ActionEvent
-
C.
CaretEvent
-
D.
MouseEvent
6
填空(2分)
Java实现图形用户界面功能的包有_______________和___________________。
//多个答案之间用中文逗号“,”分隔。
请输入答案
7
填空(2分)
JFrame的默认布局管理器是____________________________。
请输入答案
8
填空(2分)
设event是一个事件类对象,在事件处理方法中,调用______________方法可获得产生该事件的事件源组件。
请输入答案
9
填空(2分)
设event是一个ActionEvent类对象,在事件处理方法中,调用______________方法可获得事件源组件的标题。
请输入答案
10
填空(2分)
在文本行编辑框右边带有一对向上/下的箭头按钮的组件类名是______________________。
请输入答案
11
填空(2分)
多个JRadioButton实例必须加入__________________,才能实现单项选择功能。
请输入答案
12
填空(2分)
将JTextArea放置在_____________________(写出类名)组件中,能够显示滚动条。
请输入答案
13
填空(2分)
包含两个组件、组件之间有分隔条、拖动分割条可以改变组件大小的容器类名是____________。
请输入答案
14
填空(2分)
设Canvas canvas=new ……;,重画图形的语句是__________________________。
请输入答案
15
填空(2分)
调用语句(包含类名)__________________可使线程暂停运行1秒,该方法抛出______异常。
**
**
//多个答案之间用中文逗号“,”分隔。
请输入答案
16
填空(2分)
声明线程互斥方法的关键字是___________。
请输入答案
17
填空(2分)
线程同步通信时,调用___________类的____________方法可使线程等待。
//多个答案之间用中文逗号“,”分隔。
请输入答案
18
填空(2分)
调用_______________类的________________方法,可向字节流写入一个int整数。
//多个答案之间用中文逗号“,”分隔。
请输入答案
19
填空(2分)
调用___________________类的__________________方法,可从字符流中读取一行字符串。
**
**
//多个答案之间用中文逗号“,”分隔。
请输入答案
20
填空(2分)
File类判断当前文件对象是否为目录的方法是________________________________。
请输入答案
21
填空(2分)
文件选择对话框组件名是(包含包名)_________________________。
请输入答案
22
填空(2分)
表示红色的颜色对象是(写出包名)________________________________。
请输入答案
提交答案