1、 关于Java语言中的final关键字的使用,下列说法正确的是()
A、在使用final关键字定义的方法里面必须使用final关键字定义变量
B、使用final关键字定义变量,必须在变量定义的同时给定变量的具体数值,完成变量初始化
C、final关键字可以用来修饰方法,表明此方法不可以被子类重写
D、使用final关键字定义变量,必须同时使用static关键字
正确答案: C
注记:final修饰的类不能被继承, final 修饰的方法不能被重写,final修饰的属性在第一次被赋值后不可再更改值。
2、Thread. sleep()是否会抛出checked exception?
A、会
B、不会
正确答案:A
注记:Thread.sleep() 和 Object.wait(),都可以抛出 InterruptedException。这个异常是不能忽略的,因为它是一个检查异常(checked exception)
3、java中提供了哪两种用于多态的机制
A、通过子类对父类方法的覆盖实现多态
B、利用重载来实现多态,即在同一个类中定义多个同名的不同方法来实现多态
C、利用覆盖来实现多态,即在同一个类中定义多个同名的不同方法来实现多态
D、通过子类对父类方法的重载来实现多态
正确答案:AB
注记:Java通过方法重写和方法重载实现多态,方法重写是指子类重写了父类的同名方法,方法重载是指在同一个类中,方法的名字相同,但是参数列表不同
4、java运行时内存分为“线程共享”和“线程私有”两部分,以下哪些属于“线程共享”部分
A、程序计算器
B、方法区
C、Java虚拟机栈
D、Java堆
正确答案:BD
注记:私有线程区域:程序计数器、虚拟机栈、本地方法栈
线程共享区域:堆、方法区
5、
1. Integer a = 1; 2. Integer b = 1; 3. Integer c = 500; 4. Integer d = 500; 5. System.out.print(a == b); 6. System.out.print(c == d);
上述代码返回结果为:
A、true true
B、true false
C、false true
D、false false
正确答案:B
注记:Integer类型在-128-->127范围之间是被缓存了的,也就是每个对象的内存地址是相同的,赋值就直接从缓存中取,不会有新的对象产生,而大于这个范围,将会重新创建一个Integer对象,也就是new一个对象出来,当然地址就不同了,也就!=