手把手带你刷好题(牛客刷题④)

简介: 手把手带你刷好题(牛客刷题④)

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一个对象出来,当然地址就不同了,也就!=


相关文章
|
7月前
|
人工智能 BI
牛客小白月赛66
牛客小白月赛66
43 0
下一篇
DataWorks