Java基础笔试练习(八)

《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门,即可获取!
}

}

class ThreadExample extends Thread

{

private Test mv;

public ThreadExample(Test mv)

{

this.mv = mv;

}

public void run()

{

synchronized(mv)

{

mv.m();

}

}

}

class ThreadTest

{

public static void main(String args[])

{

Test mv = new Test();

Thread t1 = new ThreadExample(mv);

Thread t2 = new ThreadExample(mv);

Thread t3 = new ThreadExample(mv);

t1.start();

t2.start();

t3.start();

}

}

A.0 22 44 6

B.2 42 42 4

C.2 24 46 6

D.4 44 46 6

答案: C

解析:

Test mv =newTest()声明并初始化对data赋默认值

使用synchronized关键字加同步锁线程依次操作m()

t1.start();使得result=2,data=2,输出即为2 2

t2.start();使得result=4,data=4,输出即为4 4

t3.start();使得result=6,data=6,输出即为6 6

System.out.print(result +" "+ data);是print()方法不会换行,输出结果为2 24 46 6

8. 在 main() 方法中给出的字节数组,如果将其显示到控制台上,需要( )。


A.标准输出流System.out.println()。

B.建立字节输出流。

C.建立字节输入流。

D.标准输入流System.in.read()。

答案: A

解析:

9.假设num已经被创建为一个ArrayList对象,并且最初包含以下整数值:[0,0,4,2,5,0,3,0]。 执行下面的方法numQuest(),最终的输出结果是什么?


private List nums;

//precondition: nums.size() > 0

//nums contains Integer objects

public void numQuest() {

int k = 0;

Integer zero = new Integer(0);

while (k < nums.size()) {

if (nums.get(k).equals(zero))

nums.remove(k);

k++;

}

}

A.[3, 5, 2, 4, 0, 0, 0, 0]

B.[0, 0, 0, 0, 4, 2, 5, 3]

C.[0, 0, 4, 2, 5, 0, 3, 0]

D.[0, 4, 2, 5, 3]

答案: D

解析: 略,一步一步来就能算出

10.以下哪一个正则表达式不能与字符串“https://www.tensorflow.org/”(不含引号)匹配?()


A.[a-z]+://[a-z.]+/

B.https[?/]www[.]tensorflow[.]org[/]

C.[htps]+://www.tensorflow.org/

D.[a-zA-Z.?]+

答案: B

解析: >

[?/],这是个很明显的陷阱。[ ] 里面是不重复的,所以等价于[?]

如果[ ]后面没有带+号的话,是不会贪婪匹配的,就只能匹配到://中的其中一个

11.关于sleep和wait,以下描述错误的是?


A.sleep是线程类的方法,wait是object的方法

B.sleep不释放对象锁,wait放弃对象锁

C.sleep暂停线程,但监控状态依然保持,结束后会自动恢复

D.wait进入等待锁定池,只有针对此对象发出notify方法获得对象锁进入运行状态

答案: D

解析:

D选项最终是进入就绪状态,而不是运行状态。

12.以下描述正确的是


A.CallableStatement是PreparedStatement的父接口

B.PreparedStatement是CallableStatement的父接口

C.CallableStatement是Statement的父接口

D.PreparedStatement是Statement的父接口

答案: B

解析:

CallableStatement继承自PreparedSatement,PreparedStatement继承自Statement

13.volatile关键字的说法错误的是


A.能保证线程安全

B.volatile关键字用在多线程同步中,可保证读取的可见性

C.JVM保证从主内存加载到线程工作内存的值是最新的

D.volatile能禁止进行指令重排序

答案: A

解析:

出于运行速率的考虑,java编译器会把经常经常访问的变量放到缓存(严格讲应该是工作内存)中,读取变量则从缓存中读。但是在多线程编程中,内存中的值和缓存中的值可能会出现不一致。volatile用于限定变量只能从内存中读取,保证对所有线程而言,值都是一致的。但是volatile不能保证原子性,也就不能保证线程安全。

14.以下表达式中,正确的是()


A.byte i=128

B.boolean i=null

C.long i=0xfffL

D.double i=0.9239d

答案: C D

解析: null表示没有地址;null可以赋值给引用变量,不能将null赋给基本类型变量,例如int、double、float、boolean

15.常用的servlet包的名称是?


A.java.servlet

B.javax.servlet

C.servlet.http

D.javax.servlet.http

答案: B D

解析:

JEE5.0中的Servlet相关的就下面这几个包:

javax.servlet

javax.servlet.jsp

java.servlet.jsp.el

java.servlet.jsp.tagext

而最用得多的就是

javax.servlet

javax.servlet.http

这两个包了.

16.Java的体系结构包含( )。


A.Java编程语言

B.Java类文件格式

C.Java API

D.JVM

答案: A B C D

解析:

17.对于代码 var a = 10.42; 取出 a 的整数部分,以下代码哪些是正确的?


A.parseInt(a);

B.Math.floor(a);

C.Math.ceil(a);

D.a.split(’.’)[0];

答案: A B

解析: >Math.ceil(); ceiling(天花板) 所以向上取整

Math.floor();floor(地板)所以向下取整

split是对字符串的分割,而10.42编译器自动类型推断中应该是double类型的,所以d错误

18.判断一块内存空间是否符合垃圾收集器收集的标准有哪些?


A.给对象赋予了空值null,以下再没有调用过

B.对象重新分配了内存空间

C.给对象赋予了空值null

D.给对象赋予了新值

答案: A B D

解析:

在java语言中,判断一块内存空间是否符合垃圾收集器收集标准的标准只有两个:

1.给对象赋值为null,以下没有调用过。

2.给对象赋了新的值,重新分配了内存空间。

19.局部内部类可以用哪些修饰符修饰?


A.public

B.private

C.abstract

D.final

答案: C D

解析:

局部内部类是放在代码块或方法中的,不能有访问控制修饰符,且不能用static修饰

20.Java.Thread的方法resume()负责重新开始被以下哪个方法中断的线程的执行()。


A.stop

B.sleep

C.wait

D.suspend

答案: D

解析:

suspend() 和 resume() 方法:两个方法配套使用,suspend()使得线程进入阻塞状态,并且不会自动恢复,必须其对应的 resume() 被调用,才能使得线程重新进入可执行状态

推荐


大厂笔试内容集合(内有详细解析) 持续更新中…

ProcessOn是一个在线作图工具的聚合平台~

文末


欢迎关注个人微信公众号:Coder编程

欢迎关注Coder编程公众号,主要分享数据结构与算法、Java相关知识体系、框架知识及原理、Spring全家桶、微服务项目实战、DevOps实践之路、每日一篇互联网大厂面试或笔试题以及PMP项目管理知识等。更多精彩内容正在路上~

新建了一个qq群:315211365,欢迎大家进群交流一起学习。谢谢了!也可以介绍给身边有需要的朋友。

文章收录至
Github: https://github.com/CoderMerlin/coder-programming
Gitee: https://gitee.com/573059382/coder-programming
欢迎关注并star~

最后

金三银四马上就到了,希望大家能好好学习一下这些技术点

学习视频:

大厂面试真题:

《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门,即可获取!
实践之路、每日一篇互联网大厂面试或笔试题以及PMP项目管理知识等。更多精彩内容正在路上~

新建了一个qq群:315211365,欢迎大家进群交流一起学习。谢谢了!也可以介绍给身边有需要的朋友。

文章收录至
Github: https://github.com/CoderMerlin/coder-programming
Gitee: https://gitee.com/573059382/coder-programming
欢迎关注并star~

最后

金三银四马上就到了,希望大家能好好学习一下这些技术点

学习视频:

[外链图片转存中…(img-XCYs1N7u-1714681867805)]

大厂面试真题:

[外链图片转存中…(img-7P6zAMgr-1714681867806)]

《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门,即可获取!

  • 9
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值