面试小记,安排小场面足以。

面试小记,小场面轻轻松松搞定!!!!!

Jave基础

前言

此文资料从各个地方的优秀作者中收集,在这做一个收藏与分享。

一、JVM内存结构?

jvm
在这里插入图片描述

二、jvm与jdk关系结构?

在这里插入图片描述

三、字节码的作用?

在这里插入图片描述

四、如何判断对象可回收?

在这里插入图片描述

五、类的加载器

类加载器:启动类加载器 拓展类加载器 应用程序类加载器

六、面向对象及多态

在这里插入图片描述

多态是同一个行为具有多个不同表现形式或形态的能力。同一个接口,使用不同的实例而执行不同操作,编译时和运行时类型不一致的情况,运行时多态(重写)和编译时多态(重载)

七、ArrayList和LinkedList区别

在这里插入图片描述

八、数组查询为什么比链表快?

在这里插入图片描述

九、HashMap与HashTable区别

在这里插入图片描述

十、ConcurrentHashMap JDK1.7与1.8的区别

在这里插入图片描述

十一、双亲委派模型(向上委派向下查找)

在这里插入图片描述
在这里插入图片描述

十二、线程的状态

在这里插入图片描述
在这里插入图片描述
sleep释放资源不释放锁
wait释放资源释放锁

十三、Condition接口

在这里插入图片描述
在这里插入图片描述

十四、并发与死锁

并发,在操作系统中,是指一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都是在同一个处理机上运行,但任一个时刻点上只有一个程序在处理机上运行。

并发的三个条件:原子性 可见性 有序性

死锁发生在多线程竞争时,两个线程各自先拿到锁,想要继续执行下去得获取对方所占有的锁才能释放刚开始占的锁。没有外力剥夺,只能循环等待造成死锁。

死锁的四个条件:互斥 请求与保持 不剥夺 循环等待

十五、CAS会产生什么问题?

在这里插入图片描述 ABA问题解决:使用AtomicReference原子类加每次修改完时间戳版本号加1

十六、线程池的作用

在这里插入图片描述
在这里插入图片描述

十七、线程池阻塞队列的作用

在这里插入图片描述

十八、ThreadLocal内存泄漏分析

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值