java常见的面试题

Java基础知识点

1.为什么String要设计成不可变的?
解答链接 https://blog.csdn.net/renfufei/article/details/16808775
2.谈谈final、finally、 finalize有什么不同?
final可以用来修饰类、方法、变量。final修饰的class,代表不可以继承扩展。final的方法也是不可以重写的。final修饰的变量是不可以修改的
提到finally,那么try-catch就逃不掉了。finally 则是Java保证重点代码一定要被执行的一种机制。最常用的地方:通过try-catch-finally来进行类似资源释放、保证解锁等动作。
finalize在CG要回收某个对象时,让这个对象有底气的大喊一声:“报告,我还能再抢救一下!”。但是也正是因为如此,JVM要对它进行额外处理。finalize也就成为了CG回收的阻碍者,也就会导致这个对象经过多个垃圾收集周期才能被回收。在Java9中,明确将Object.finalize()标记为deprecated!

你可能感兴趣的:(java常见的面试题)