java基础测试题_含答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
姓名
一、选择题(每题2分,共30分)
1.请写出标识符的命名规则描述正确的是[多选]( ABCD )
A、由英文字母、数字、_和$组成,长度不限。
B、标识符的第一个字符不能是数字
C、标识符区分大小写。
D、标识符不能包含空格。
2. 下列属于正确标识符的选项有[多选](BDGH)
A. int
B. $_Count
C. 3M
D. Hello
E. b-7
F. ms#d
G. bool
H. D9658
3、下列哪一个不属于java的基本类型( B )
A、int
B、String
C、float
D、byte
4、下列那条语句能编译通过( A )
A、String String=”String”;
B、float float=””;
C、int int = 11;
D、int i= ;
5、下列代码的执行结果是: ( D )
public class Test1{
public static void main(String args[]){
float t=;
int q=5;
}
}
A、 40
B、
C、36
D、
6、int长度描述正确的是( A )
A、-2^31到2^31 - 1
B、-2^32到2^32 - 1
C、-2^7到2^7 - 1
D、-2^8到2^8 - 1
7、关于==和equals方法描述不正确的是( D )
A、==是运算符、equals是方法
B、==只比较对象,equals会先比较对象,如果不是一个对象,会对对象的值进行比较。
C、String a= "1"; String b= "1"; 输出结果为:true
D、String a=new String("1");String b=new String("1");
输出结果为:true
8、下列关于哪个不属于java的特性( D )
A、封装
B、继承
C、多态
D、重载
9、某一个子类要继承一个父类,要使用关键字( B )
A、import
B、extends
C、implements
D、java
10、某一个子类要实现一个父接口,要使用关键字( C )
A、import
B、extends
C、implements
D、java
11、以下关于接口和类的说法正确的是( C )
A、接口和类都可以实现多重继承
B、子类可以继承多个父类
C、子类可以实现多个接口
D、一个子类不能同时继承某一个父类和实现某一个接口
12、一个非抽象子类,如果要实现某个接口,则( A )
A、必须实现该接口中的所有抽象方法
B、可以实现部分抽象方法
C、可以不实现任何抽象方法
D、无所谓
13、下列关于Java线程的说法那些是正确的( D )
A、每一个Java、线程可以看成由代码.一个真实的CPU以及数据三部份组成。
B、创建线程的两种方法中,从Thread类中继承的创建方式可以防止出现多父类问题。
C、Thread类属于程序包。
D、以上说法无一正确。
14、下列哪个方法能让当前线程释放对象锁( A )
A、wait()
B、join()
C、start()
D、sleep()
15、下列哪个不是线程的基本状态( D )
A、就绪状态
B、运行状态
C、阻塞状态
D、响应状态
二、填空题(每题2分,共10分)
1、一般Java程序的类体由两部分组成:一部分是属性,另一部分是方法
2、子类对父类继承来的属性重新定义称为重写。子类对自身拥有的同名方法的重新定义称重载。
3、定义一个静态方法使用的关键字是 static 。
4、接口声明有常量和抽象方法。
5、在Java中,能实现多重继承效果的方式是接口。
三、判断题(每题2分,共10分)
1、一个抽象类中必须包含的有抽象方法(错)
2、一个类可以继承多个类(错)
3、一个类可以同时实现多个接口(对)
4、当线程调用start()方法后,线程立即就会执行(错)
5、在流程控制语句中,break语句表示直接跳出循环,continue表示结束本次循环,继续下一次循环(对)。
四、简单题(每题10分,共50分)
1、请列出java中常用的访问修饰符(访问控制),并说明其作用。
(1)public:用public修饰的类、类属变量及方法,包内及包外的任何类(包括子类和普通类)均可以访问;
(2)protected:用protected修饰的类、类属变量及方法,包内的任何类及包外那些继承了该类的子类才能访问,protected重点突出继承;
(3)default:如果一个类、类属变量及方法没有用任何修饰符(即没有用public、protected及private中任何一种修饰),则其访问权限为default(默认访问权限)。默认访问权限的类、类属变量及方法,包内的任何类(包括继承了此类的子类)都可以访问它,而对于包外的任何类都不能访问它(包括包外继承了此类的子类)。default重点突出包;(4)private:用private修饰的类、类属变量及方法,只有本类可以访问,而包内包外的任何类均不能访问它。
2、简述hashtable和hashmap的区别
•HashMap允许键和值是null,而Hashtable不允许键或者值是null。
•Hashtable是同步的,而HashMap不是。因此,HashMap更适合于单线程环境,而Hashtable 适合于多线程环境。
•HashMap提供了可供应用迭代的键的集合,因此,HashMap是快速失败的。另一方面,Hashtable提供了对键的列举(Enumeration)。一般认为Hashtable是一个遗留的类。
3、简述sevelet的生命周期
Servlet生命周期分为三个阶段:
1,初始化阶段调用init()方法
2,响应客户请求阶段调用service()方法
3,终止阶段调用destroy()方法
4、java基本数据类型有哪些•byte、•short、•int、•long、•float、•double、•boolean、•char
5、简述sleep() 和 wait() 有什么区别?