复习题.docx
《复习题.docx》由会员分享,可在线阅读,更多相关《复习题.docx(18页珍藏版)》请在冰豆网上搜索。
复习题
1Java中对数据库查询结果集进行操作的对象是()(D
A:
Connection对象
B:
Statement对象
C:
DriverManager对象
D:
ResultSet对象
2按运算符操作数的数目划分,运算符?
:
的类型是()A
A:
三目
B:
双目
C:
四目
D:
单目
3有关在Java中定义实例方法和类方法的叙述正确的是()(D
A:
前者有public修饰,后者没有public修饰
B:
前者没有public修饰,后者有public修饰
C:
前者有static修饰,后者没有static修饰
D:
前者没有static修饰,后者有static修饰
4Java代码g.drawLine(100,100,100,100)的功能是()B
A:
画一个圆
B:
画一条线段
C:
画一个点
D:
代码是错误的
5有Java语句如下,则说法正确的是()C
int[]a,b=newint[3];(1分)
A:
此语句是错误的
B:
a.length的值为3
C:
b.length的值为3
D:
a.length和b.length的值都为3
6以下程序代码的输出结果是()B
System.out.println(100/8);(1分)
A:
12.5
B:
12
C:
4
D:
0
7在Java语言中,一般不作为容器使用的是()
A:
JDialog
B:
JFrame
C:
JTextArea
D:
JPanel
8在Java语言中,把按钮button的标题文字设置为“第一个按钮”的方法是()A
A:
button.SetText("第一个按钮")
B:
button.GetText("第一个按钮")
C:
button.SetLabel("第一个按钮")
D:
button.GetLabel("第一个按钮")
9、在Java程序中声明一个数组,错误的是()C
A:
inta[];
B:
inta[][];
C:
floata[10];
D:
float[]a[];
10、在Java程序中有定义:
intx[][]=newint[4][5];则x.length和x[3].length的值分别是()A
A:
4和5
B:
5和4
C:
4和3
D:
5和3
11定义一个使用接口Java.lang.Runnable的类,必须要实现的方法是()(1分B
A:
start()
B:
run()
C:
init()
D:
paint()
12、如果发生多个线程形成一个等待环,这样,所有线程都陷入相互等待的状态。
这种循环等待现象称为()(1分)?
A:
互斥
B:
同步
C:
死锁
D:
临界
13、
下列关于线程的说法正确的是()(D
A:
一个线程被创建,它就立即开始运行
B:
使用start()方法可以使一个线程立即开始运行
C:
当一个线程因为抢先机制而停止运行时,它被放在可运行队列的前面
D:
一个正在运行的线程可能因为某些情况而进入阻塞状态
14在Java程序中有代码如下:
System.out.println(
(newStringTokenizer("Iamastudent","a")).countTokens());
则输出结果为()(1分)c
A:
Iamastudent
B:
2
C:
3
D:
4
15、定义一个使用接口Java.lang.Runnable的类,必须要实现的方法是()B
A:
start()
B:
run()
C:
init()
D:
paint()
16在编写Java程序访问数据库的过程中,用来处理驱动程序的加载和建立新数据库连接的类是()(1分)A
A:
DriverManager类
B:
Statement类
C:
Connection类
D:
ResultSet类
17、以下是创建File对象的代码,错误的是()(D
A:
Filef1=newFile("/mydir/myfile.txt");
B:
Filef2=newFile("/mydir","myfile.txt");
C:
Filef3=newFile("\\mydir\\myfile.txt");
D:
Filef4=newFile("\mydir\myfile.txt");
18、在Java语言中执行如下语句后,i和j的值分别为()
inti=10;intj=++i;(1分)
A:
11和11
B:
10和10
C:
10和11
D:
11和10
19、JAVA中为字符型输入/输出流提供的读字符的方法所使用的类是()。
C
A、InputStreamB、OutputStreamC、FIleReaderD、FileWriter
20、以下程序代码的输出结果是()D
intx=100;
System.out.println("5.5"+x%8);(1分)
A:
5.512
B:
5.512.5
C:
18
D:
5.54
21、下列哪些字符串匹配模式”。
boy\\w[3]”()。
A、boy111B、boy!
@#C、boyweoD、boyboyboyboy
22下列哪个关键可用来定义Java常量()。
A、publicB、staticC、finalD、void
23、在Java程序中有代码如下:
System.out.println(
(newStringTokenizer("Iamastudent","a")).countTokens());
则输出结果为()(1分)C
A:
Iamastudent
B:
2
C:
3
D:
4
24、为8位字节流数据提供读操作支持的类是()(1分)A
A:
FileInputStream
B:
FileOutputStrem
C:
FileReader
D:
FileWriter
25、下列有关抽象类及抽象方法的叙述错误的是()(1分)A
A:
使用final修饰的类是抽象类
B:
使用abstract修饰的方法是抽象方法
C:
抽象类必须被继承才能使用,抽象类不可能有实例
D:
抽象类可以没有抽象方法,但有抽象方法的类一定是抽象类
26、设x=40则执行y=(++x)+(x++)+1后,x,y的结果分别为()
A、42,80B、41,81C、43,82D、42,83
27、在编写JavaApplication程序时,若需要使用到标准输入输出语句,必须在程序的开头写上()语句。
A.importjava.awt.*;B.importjava.applet.Applet;
C.importjava.io.*;D.importjava.awt.Graphics;
28、有关Java语言的特点,哪种是错误的()
A、多态B、可移植C、多线程D、手动垃圾回收
29、J2SE是()
A、Java企业平台B、Java标准平台C、Java小型平台D、Java小型平台第二版
31、下列哪种操作不会跑出异常()A
A :
浮点数除以0得到InfinityB :
i=0/0 ;C :
打开不存在的文件D :
a[-1]=100 ;
32、于length()表述正确的是()C
A :
数组有length()方法,String也有length()方法
A :
数组有length()方法,String没有length()方法
A :
数组没有length()方法,String有length()方法
A :
数组没有length()方法,String也没有length()方法
33、下列正确的句子是()(1分)D
A:
float3.14;
B:
bytei=225;
C:
intk=33L;
D:
intp[][];
34.
在Java语言中执行如下语句后,i和j的值分别为()A
inti=10;intj=++i;(1分)
A:
11和11
B:
10和10
C:
10和11
D:
11和10
35、当使用FileInputStream类中的read()方法时,如果没有读入一个字节数据时,返回值为()B
A:
0
B:
-1
C:
true
D:
false
36、下列程序的输入结果是()。
StringBufferbuf1=newStringBuffer(20);
buf1.append("student");
System.out.println(buf1.length()+","+buf1.capacity());
A.20,20B.7,20C.0,20D.0,0
39、一个实现Runnabel接口的类必须要实现的方法是()(
A:
start()
B:
run()
C:
sleep()
D:
init()
40、下列有关Java的叙述错误的是()(1分)D
A:
强类型语言
B:
与平台无关
C:
可以使用汉字变量名
D:
不检查数组下标越界
41
下列有关数组的叙述错误的是()(1分)D
A:
数组是将一组相同类型的数据顺序存储,组成一种复合数据类型
B:
在Java语言中,数组是一种引用类型,数组名如同对象名一样,是一种引用
C:
对于多维数组,从最高维开始,可以对每一维分配不等长的空间
D:
在Java语言中,数组元素可以互相赋值,而数组名不能直接赋值
42.
当线程A使用某个对象,而此对象又需要线程B修改后才能符合A线程的需要,这时线程A就要等待线程B完成修改工作,这种现象称为()(1分)
A:
线程的同步
B:
线程的互斥
C:
线程的调度
43、StringBuffer类的字符对象的长度是()B
A :
固定长度B :
可变长度C :
长度必须小于16个字符D :
长度必须大于16个字符
44、对于catch子句的排列,下列正确的是()B
A :
父类在前,子类在后B :
父类在后,子类在前C :
有继承关系的异常类不能在同一个try内D :
必须有Exception类的Catch捕捉
二、阅读下列程序,写出程序运行结果。
1、classA
{
intx,y;
A(intxx,intyy){x=xx;y=yy;}
}
interfaceA3202{intf3202(Aa);}
interfaceB3202{intg3202();}
publicclassC3202extendsAimplementsA3202,B3202
{
Aa=newA(x,y);
C3202(intx,inty)
{
super(x,y);
this.x=x*x;
this.y=y*y;
}
publicintf3202(Aa){returnx*a.x+x*a.y;}
publicintg3202(){returnx*a.x+x*a.y;}
publicstaticvoidmain(String[]args)
{
intx=10,y=20;
Aa=newC3202(x,y);
C3202c=newC3202(x,y);
System.out.println(a.x+","+a.y);
System.out.println(c.f3202(a));
System.out.println(c.g3202());
}
}
2、classA
{
Bobj;
A()
{
obj=newB();
obj.print();
System.out.println("AAA");
}
classB
{
publicvoidprint()
{System.out.println("BBB");}
}
}
publicclassClass3202
{
publicstaticvoidmain(Stringarg[])
{Aobj=newA();}
考答案:
程序运行结果:
BBB
AAA
3、写出下面程序的运行结果。
publicclassClass34ThreadTest
{
publicstaticvoidmain(Stringargs[])
{
Helloh=newHello();
Threadt=newThread(h);
t.start();
}
}
classHelloimplementsRunnable
{
inti;
publicvoidrun()
{
while(true)
{
System.out.println("Hello"+i++);
if(i==5)break;
}
}
})
4、publicclassAAAAa
{
publicstaticvoidmain(Stringarg[])
{
Stringstr=".con/index.php";
Stringregex="[./]";
Strings[]=str.split(regex);
for(inti=0;iSystem.out.println(s[i]);
}
}
5、publicclassBBBBB{
publicstaticvoidmain(String[]args){
byted[]="我是一个学生工大的sdfsd".getBytes();
System.out.println("数组d的长度:
"+d.length);
Strings=newString(d,10,2);
System.out.println(s);
}
}
6、importjava.io.*;
publicclassCCCCC
{
publicstaticvoidmain(Stringargs[])
{
Filefile=newFile("hello.txt");
charb[]="北京欢迎你".toCharArray();
try{
FileWriterout=newFileWriter(file);//writing
out.write(b);
out.write("你好中国");
out.close();
FileReaderin=newFileReader(file);//reading
intn=0;
while((n=in.read(b,0,2))!
=-1)
{
Stringstr=newString(b,0,2);
System.out.println(str);
}
in.close();
}
catch(IOExceptione)
{
System.out.println(e);
}
System.out.println("b[]="+(newString(b)));
}
}
7、写出下面程序的运行结果
classEmployee{
privateintid;
privatebytesex;
privateStringname;
privateStringduty;
privatefloatsalary;
privateintholidays;
publicEmployee(intid,bytesex,Stringname,Stringduty,floatsalary,intholidays){
this.id=id;this.sex=sex;this.name=name;
this.duty=duty;this.salary=salary;this.holidays=holidays;
}
publicStringgetDuty(){returnduty;}
publicvoidsetDuty(Stringduty){this.duty=duty;}
publicintgetHolidays(){returnholidays;}
publicvoidsetHolidays(intholidays){this.holidays=holidays;}
publicintgetId(){returnid;}
publicvoidsetId(intid){this.id=id;}
publicStringgetName(){returnname;}
publicvoidsetName(Stringname){this.name=name;}
publicfloatgetSalary(){returnsalary;}
publicvoidsetSalary(floatsalary){this.salary=salary;}
publicbytegetSex(){returnsex;}
publicvoidsetSex(bytesex){this.sex=sex;}
/**
*display(),无返回值,该方法能打印员工的姓名、性别以及职务
*@paramemployee
publicvoiddisplay(Employeeemployee){
System.out.println("员工姓名为:
"+employee.getName());
if(employee.getSex()==1){
System.out.println("员工性别为:
男");
}elseif(employee.getSex()==2){
System.out.println("员工性别为:
女");
}
System.out.println("员工职务为:
"+employee.getDuty());
}
/**
*getDecMoney(intday)返回值是int型。
*如果请假天数<=3,则扣款为30×请假天数;
*如果请假天数超过3天,则扣款为50×请假天数。
*@paramday
*@return
*/
publicintgetDecMoney(intday){
intdeduction=0;//扣除的工资
if(day<=4){
deduction=30*day;
}elseif(day>4){
deduction=44*day;
}
returndeduction;
}
publicstaticvoidmain(String[]args){
//创建一个员工类的对象
Employeeemployee=newEmployee(123456789,(byte)1,"的","生产帽子的(color)",(float)300.8,3);
employee.display(employee);//调用display()
intdeduction=employee.getDecMoney(employee.getHolidays());//调用getDecMoney()
System.out.println("该员工因请假扣除工资"+deduction+"元");
8、classancestorClass
{privateinta=8;
protectedintb=15;
voidf()
{System.out.print(a*b);}
voidg(){System.out.print("ancestorClassFunctionghasbeencalled!
");
}
}
publicclassTestextendsancestorClass
{intc=5;
publicvoidf()
{System.out.println(b/c);}
publicvoidtestfun()
{System.out.println("sonfunctiontestfunhasbeencalled!
");}
publicstaticvoidmain(Stringargs[])
{ancestorClasssc=newancestorClass();
sc.f();
sc.g();
sc=newTest();
((Test)sc).testfun();
}
}
9、classTest
{floatF;
publicdoublegetF(floatF)
{F++;
returnthis.F;
}
publicstaticvoidmain(Stringargs[])
{System.out.println(newTest().getF(10));}
}
10、classputOutDataextendsThread
{publicvoidrun(){for(inti=2;i<=10;i++)System.out.print(i+"");}
}
classTest
{publicstaticvoidmain(Stringargs[])throwsInterruptedException
{Threadth=newputOutData();
th.start();
System.out.print("程序结束啦!
");
四、简答
1、什么是上转型对象?
2、什么叫接口回调?
3、什么是正则表达式?
写出与模式“A[13568]{3}”匹配的几个字符串。
4、程序、线程和进程的关系?
5、、线程有4种状态?
6、FileInputStream流的read()方法和FileReader流的read()方法有何不同?
它们的文件输出流分别对应哪个类?
7、java的方法重写继承的方法的规则是什么?
8、String和StringBuffer的区别?
9、子类继承方法时,可以降低方法的访问权限吗?
五、程序设计题
1、编写一个方法string3703,要求在一个字符串数组中找出长度最长的一个元素。
其中字符串数组是方法的参数,最长的一个元素是