11.17

sleep和wait的区别:
sleep 是线程类(Thread)的方法,导致此线程暂停执行指定时间,给执行机会给其他线程,但是监控状态依然保持,到时后会自动恢复。调用 sleep 不会释放对象锁。
wait 是 Object 类的方法,对此对象调用 wait 方法导致本线程放弃对象锁,进入等待此对象的等待锁定池,只有针对此对象发出 notify 方法(或notifyAll)后本线程才进入对象锁定池准备获得对象锁进入运行状态。

JVM的GC垃圾回收机制常见算法:
标记-清除算法(Mark and Sweep):首先标记出所有活动对象,然后清除未标记的对象。
复制算法(Copying):将可用内存分为两块,每次只使用其中一块,将存活对象复制到另一块中,然后清除当前使用的块。
标记-整理算法(Mark and Compact):标记出所有活动对象,然后将活动对象向一端移动,之后清理边界外的内存。
分代收集算法(Generational Collection):将堆内存分为新生代和老年代,并使用不同的回收算法。新生代通常使用复制算法,老年代使用标记-清除或标记-整理算法。

Error和Exception的区别:
Error是由系统和JVM引起的严重问题,通常无法通过代码处理,程序应该终止。
Exception是由程序执行过程中的异常情况引起,可以通过代码捕获并处理,有可能继续执行。Error继承自java.lang.Error类,而Exception继承自java.lang.Exception类。

posted @ 2025-11-17 20:03  萌新求职记录  阅读(10)  评论(0)    收藏  举报