请选择 进入手机版 | 继续访问电脑版
本站特色:极好的技术研究氛围!所有技术交流,必有回复!

疯狂Java联盟

 找回密码
 加入联盟
查看: 497|回复: 0

Java面试题集14(核心部分)——《疯狂Java讲义》附赠

[复制链接]
发表于 2018-5-24 19:18:15 | 显示全部楼层 |阅读模式

本文随《疯狂Java讲义》光盘附赠

京东购买地址:https://item.jd.com/12261787.html
当当购买地址:http://product.dangdang.com/23532609.html


27ClassLoader如何加载class
JVM里有多个类加载,每个类加载可以负责加载特定位置的类,例如,Bootstrap类加载(根类加载器)负责加载它负责加载Java的核心类(jre/lib/rt.jar中的类), JDK常用的String、Math、HashSet、ArrayList等类都位于rt.jar中;Extension类加载器负责加载jar/lib/ext/*.jar中的类,应用类加载器(App ClassLoader负责CLASSPATH指定的目录或JAR包中的类。除了Bootstrap之外,其他的类加载器本身也都是Java类,它们的父类是ClassLoader;
Bootstrap类加载器(根类加载器)非常特殊,它并不是java.lang.ClassLoader的子类,而是由JVM自身实现的。
28GC是什么? 为什么要有GC?   
GC是垃圾收集的意思(GabageCollection),内存处理是编程人员容易出现问题的地方,忘记或者错误的内存回收会导致程序或系统的不稳定甚至崩溃,Java提供的GC功能可以自动监测对象是否超过作用域从而达到自动回收内存的目的。
Java的System类和Runtime类都提供了“通知”程序进行垃圾回收的方法,例如如下代码:
Systme.gc();
Runtime.getInstance().gc();
但这两个方法只是“通知”Java进行垃圾回收,但实际上JVM何时进行垃圾回收,还是由JVM自己决定。


您需要登录后才可以回帖 登录 | 加入联盟

本版积分规则

微信群请扫二维码
QQ交流1群:
545923995
(未满)

小黑屋|手机版|Archiver|疯狂Java联盟 ( 粤ICP备11094030号 )

GMT+8, 2020-2-22 02:40 , Processed in 0.242847 second(s), 7 queries , File On.

快速回复 返回顶部 返回列表