Java EE (1) -- Java EE 6 Web Component Developer Certified Expert(1z0-899)

本文深入探讨了Java类加载器的工作机制,包括引导类加载器、扩展类加载器、系统类加载器的功能及其关系。同时,文章详细介绍了线程同步问题、并发控制的实现方式、死锁形成原因及检测方法。此外,还覆盖了异常处理、AOP、动态代理等高级话题,以及动态加载、反射原理,展示了Java在并发编程和内存管理方面的强大能力。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1: hash map, hash tables 的区别
The HashMap class is roughly equivalent to Hashtable, except that it is unsynchronized and permits nulls.
 
2: class loader有几种,它们都干嘛,从哪里load class,以及它们的关系是啥。
为啥要自己做classloader ?
Class loaders may typically be used by security managers to indicate security domains.
ClassLoader instance will delegate the search for the class or resource to its parent class loader before attempting to find the class or resource itself
The virtual machine's built-in class loader, called the "bootstrap class loader", does not itself have a parent but may serve as the parent of a ClassLoader instance.
some classes may not originate from a file; they may originate from other sources, such as the network.

引导类加载器(bootstrap class loader):它用来加载 Java 的核心库,是用原生代码来实现的,并不继承自 java.lang.ClassLoader。

扩展类加载器(extensions class loader):它用来加载 Java 的扩展库。Java 虚拟机的实现会提供一个扩展库目录。该类加载器在此目录里面查找并加载 Java 类。

系统类加载器(system class loader):它根据 Java 应用的类路径(CLASSPATH)来加载 Java 类。一般来说,Java 应用的类都是由它来完成加载的。可以通过 ClassLoader.getSystemClassLoader() 来获取它。

对于开发人员编写的类加载器来说,其父类加载器是加载此类加载器 Java 类的类加载器。一般来说,开发人员编写的类加载器的父类加载器是系统类加载器。

Java 虚拟机不仅要看类的全名是否相同,还要看加载此类的类加载器是否一样。只有两者都相同的情况,才认为两个类是相同的。

代理模式是为了保证 Java 核心库的类型安全。通过代理模式,对于 Java 核心库的类的加载工作由引导类加载器来统一完成,保证了 Java 应用所使用的都是同一个版本的 Java 核心库的类,是互相兼容的。

 
3: 线程与同步问题,线程间通信机制有哪些,如何搞定。
 
4. 异常分为那几种(checked or nonchecked exception),如果你自己去design exception,是checked or nonchecked exception?
http://blog.youkuaiyun.com/kingzone_2008/article/details/8535287
 
5. AOP 和动态代理
 
6. concurrentHashMap是干啥用的?
 
7. JDK1.5以后增加了哪些并发控制的东西?
 
8. 说下lock,同步的过程
 
9. 说下deadlock形成的原因,如果程序有deadlock,有何表现,用啥方法去检测?如何避免?
  jps, jstack可以dump JVM的印象,就能发现问题。
 
10. 动态加载和反射原理和过程
 
11. 具体说下class loader的机制,过程。啥情况下要用定制的class loader
 
12. 说下 RESTFUL web serverice的原理
 
13. 说下 SOAP-based web service的原理
 
14. 谈下goF模式都有些啥,你在开发中用到了些啥?
 
15. java有内存泄露吗?如何检测内存泄露,用啥工具,咋样做?
 
17. 你自己用了啥工具去做Java-based UT?  (HttpUnit,mock object, cactus, junit)
 
18. 说下 jikinps , git的用法,干嘛使的?
 
19: threadlocal是干嘛用的,用在啥场合?
 
20:NIO是啥意思,说说原理。
 
21: 详细说JVM GC 内存回收机制

转载于:https://www.cnblogs.com/thlzhf/p/3941223.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值