Corejava试题.docx
- 文档编号:8192271
- 上传时间:2023-01-29
- 格式:DOCX
- 页数:10
- 大小:19.19KB
Corejava试题.docx
《Corejava试题.docx》由会员分享,可在线阅读,更多相关《Corejava试题.docx(10页珍藏版)》请在冰豆网上搜索。
Corejava试题
Corejava试题
姓名__________班级___________
1、选择题(本题为多选题,全部正确才给分,每题2分,总分46分)
1、编译java程序的命令是________;运行java程序的命令是________;产生java文挡的命令是_______;查询java类型是否是serializable类型的命令是_______;产生java安全策略文件的命令是________;产生类型归档文件.jar的命令是________。
A.javaB.javacC.serialver
D.javadocE.policytoolF.jar
2、在使用super和this关键字时,以下描述正确的是()
A在子类构造方法中使用super()显示调用父类的构造方法,super()必须写在子类构造方法的第一行,否则编译不通过
Bsuper()和this()不一定要放在构造方法内第一行
Cthis()和super()可以同时出现在一个构造函数中
Dthis()和super()可以在static环境中使用,包括static方法和static语句块
3、下面叙述正确的有___________________。
A.在一个java原文件中只能定义一个class
B在一个java原文件中只能定义一个interface
C在一个java原文件中可以定义多个class
D在一个java原文件中可以定义多个interface
E在一个java原文件中可以定义多个class和interface
F在一个java原文件中只能定义publicclass
Gjava原文件的前缀一定是所包含类型的名字
4、java程序中程序运行入口方法main的签名正确的有________。
A.publicstaticvoidmain(Stringargs[])
B.staticpublicvoidmain(String[]args)
C.publicvoidstaticmain(String[]args)
D.publicvoidmain(Stringargs[])
5、以下程序的运行结果是()
classPerson{
publicPerson(){
System.out.println(“thisisaPerson”);
}
}
publicclassTeacherextendsPerson{
privateStringname=”tom”;
publicTeacher(){
System.out.println(“thisisateacher”);
super();
}
publicstaticvoidmain(String[]args){
Teacherteacher=newTeacher();
System.out.println(this.name);
}
}
AthisisaPerson
thisisateacher
tom
Bthisisateacher
thisisaPerson
tom
C运行出错
D编译有错误
6、以下能作为class,interface,method或variable有效标识符的有________________。
A.ForB.booleanC.23age
D._idE.mynameF.$this_is_a_long_variable_name
7、以下不是java关键字的有_______。
A.superB.thisC.NULLD.true/false
8、以下能作为char类型的字面值的有_______。
A.“e”B.’杰’C.‘\u12’D.205
9、byte变量的取值范围是________。
A.0-65535B.-128–127C.-256–255D.0-32767
10、以下正确的有_______。
A.inti=32;B.floatf=45.32;C.doubled=3.2;
11、以下返回true的表达式有_______。
A.“briup”==“briup”B.”briup”=“briup”
C.“briup”.equals(newString(“briup”))D.“briup”==newString(“briup”)
12、以下switch表达语句正确的有________。
A.publicvoidswitchTest(Stringc){
switch(c){…}
}
B.publicvoidswitchTest(longc){
switch(c){…}
}
C.publicvoidswitchTest(bytec){
switch(c){…}
}
D.publicvoidswitchTest(doublec){
switch(c){…}
}
13、以下方法申明正确的有______________。
A.publicstaticsynchronizedvoidwriteLog(Stringmsg)
B.synchronizedpublicstaticwriteLog(Stringmsg)
C.publicfinalabstractvoidwriteLog(Stringmsg)
D.finalpublicvoidwriteLog(Stringmsg)
E.abstractsynchronizedvoidwriteLog(Stringmsg)
14、方法重载(overloading)必须满足________。
A.在不同class中定义的方法B.在同一类型中定义的方法
C.方法名必须相同D.返回类型必须相同
E.参数一定不同F.参数可以相同
15、请看以下程序:
classVehicle{
publicvoiddrive(){
System.out.println("Vehicle:
drive");
}
}
classCarextendsVehicle{
publicvoiddrive(){
System.out.println("Car:
drive");
}
}
publicclassTest{
publicstaticvoidmain(Stringargs[]){
Vehiclev;
Carc;
v=newVehicle();
c=newCar();
v.drive();
c.drive();
v=c;
v.drive();
}
}
以下描述正确的有________。
A.对于语句v=c;会导致编译错误B.对于语句v=c;会导致运行错误
C.运行输出:
Vehicle:
drive
Car:
drive
Car:
drive
D.运行输出:
Vehicle:
drive
Car:
drive
Vehicle:
drive
16、程序:
publicclassStaticTest{
static{
System.out.println("Hithere");
}
publicvoidprint(){
System.out.println("Hello");
}
publicstaticvoidmain(Stringargs[]){
StaticTestst1=newStaticTest();
st1.print();
StaticTestst2=newStaticTest();
st2.print();
}
}
什么时候字符串“Hithere”会输出________。
A.永远都不会输出B.创建st1和st2时
C.第一次将StaticTest类型装载进内存时D.显示调用print方法时
17、创建一个tcp服务程序的顺序是_______。
A.创建一个服务线程处理新的连接
B.创建一个服务器socket
C.从服务器socket接受客户连接请求
D.在服务线程中,从socket中获得I/O流
E.对I/O流进行读写操作,完成与客户的交互
F.关闭socket
G.关闭I/O流
18、JavaUDP编程主要用到的两个类型是________和_______。
发送和接收信息的方法是_______。
A.UDPSocketB.DatagramSocket
C.UDPPacketD.DatagramPacket
E.read/writeF.send/receive
19、swing图形界面通常都会有菜单控件,所有的菜单都加到________;菜单的类型是________;在菜单上会有选项类型________。
A.JMenuItemB.JCheckBoxMenuItem
C.JMenuBarD.JRadioBoxMenuItemE.JMenu
20、图形编程通常按_________________顺序。
A.设置布局管理器(Layoutmanager)B.向容器中增加控件
C.选择容器D.为控件设置事件处理器
21.如下程序:
publicclassArugmentTest{
staticclassIntA{
privateinta;
publicIntA(inta){this.a=a;}
publicintgetA(){returna;}
publicvoidsetA(inta){this.a=a;}
}
staticpublicvoidchange(inta){
a=3;
}
staticpublicvoidchange(IntAa){
a.setA(3);
}
staticpublicvoidchangeRef(IntAa){
a=newIntA(9);
}
publicstaticvoidmain(String[]args){
inta=2;
change(a);
System.out.print(a);
IntAia=newIntA(5);
change(ia);
System.out.print(ia.getA());
ChangeRef(ia);
System.out.println(ia.getA());
}
}
在控制台上输出的是______。
A.233B.333C.259D.339
22.有下面代码
import java.util.*;
class Student {
int age;
String name;
public Student(){}
public Student(String name, int age){
this.name = name;
this.age = age;
}
public int hashCode(){
return name.hashCode() + age;
}
public boolean equals(Object o){
if (o == null) return false;
if (o == this) return true;
if (o.getClass() !
= this.getClass()) return false;
Student stu = (Student) o;
if (stu.name.equals(name) && stu.age == age)
return true;
else return false;
} }
public class TestHashSet{
public static void main(String args[]){
Set set = new HashSet();
Student stu1 = new Student();
Student stu2 = new Student(“Tom”, 18);
Student stu3 = new Student(“Tom”, 18);
set.add(stu1);
set.add(stu2);
set.add(stu3);
System.out.println(set.size());
} }
下列说法正确的是:
A. 编译错误
B. 编译正确,运行时异常
C.编译运行都正确,输出结果为3
D. 编译运行都正确,输出结果为2
23.有下面代码
importjava.util.*;
publicclassTestListSet{
publicstaticvoidmain(Stringargs[]){
Listlist=newArrayList();
list.add(“Hello”);
list.add(“Learn”);
list.add(“Hello”);
list.add(“Welcome”);
Setset=newHashSet();
set.addAll(list);
System.out.println(set.size());
}
}
选择正确答案()
A.编译不通过
B.编译通过,运行时异常
C.编译运行都正常,输出3
D.编译运行都正常,输出4
2、填空题(每空0.5分,总分19分)
1、Java方法的参数传递对于基本数据类型如int,byte等,参数传递是________;对自定义数据类型,参数传递是_______。
2、创建线程(Thread)的方式有两种,一种是继承类________,另一种是实现接口________。
启动线程的方法是________。
线程启动后运行的是________方法里的代码。
3、并发控制是多线程编程的难点。
一个线程要等待某个条件的满足而阻塞调用方法________;通知某一个处于等待状态线程的方法是________,通知多个处于等待状态线程的是方法_______;代码临界区的方法或程序块用关键字________来限制达到互斥效果。
4、对原始数据的读写,采用_______接口和_______接口的相关实现类,为了提高性能增加缓存区采用流________和________;对各种基本数据类型的读写,采用流________和________;读写文字节流采用________接口和________接口的相关实现类,方便读写字符串到字节流的转换采用流________和________;对象读写采用流________和_______。
5、一个File对象是文件或目录在内存中的表示,File类型中定义了方法______来判断一个文件是否存在,定义方法________创建一个新文件,定义方法________删除一个文件,定义方法_______改变文件名,定义方法_______创建一级目录,定义方法________同时创建一个目录层次。
对用二进制保存内容的文件操作用文件I/O流________和_______;对用字符文本保存内容的文件操作用文件I/O流________和________;对文件可以从任意位置进行写操作用文件流_______。
6、事件处理方式采用了observer(观察者)设计模式,事件编程模式三要素是_______、________和________。
其中,________通常继承java.util.EventObject,________通常继承java.util.EventListener。
3、简答题(每题3分,总分15分)
1、运算符“==”与equals比较对象的区别是什么
2、说出ArrayList,Vector,LinkedList的存储性能和特性.
3、.什么是java序列化,如何实现java序列化
4、接口是否可以相互继承、相互实现?
抽象类是否可实现(implements)接口?
抽象类是否可继承实体类?
5、String是最基本的数据类型吗?
String和StringBuffer的区别?
4、编程题(第1、2小题每题5分,第3题10分,总分20分)
1、李白街上走,提壶去买酒,遇店加一倍,见花喝一斗,五遇店和花,喝光壶中酒,壶中原有多少酒?
请编程计算李白的壶中原有多少斗酒。
2、常用的排序算法有哪些,请列举?
使用java实现选择排序,对数组int[]array={2,5,-5,98,198,43};进行排序。
(在要排序的一组数中,选出最小的一个数与第一个位置的数交换;然后在剩下的数当中再找最小的与第二个位置的数交换,如此循环到倒数第二个数和最后一个数比较为止。
)
3、使用Socket实现文本文件test.txt在客户端和服务器端之间的传输
(使用Socket创建客户端和服务器端,将文件testA.txt通过客户端传递到服务器端,再保存在本地文件testB.txt中)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Corejava 试题
![提示](https://static.bdocx.com/images/bang_tan.gif)