类加载器和java.lang.Class类

1.       类加载器的含义。

Java虚拟机在用到一个类的时候,首先要把这个类加载进虚拟机内存。这个功能就是由类加载器完成的。最常见的类加载器就是将本地的.class文件(UTF-8编码)加载为虚拟机的Unicode编码的字节码。Java语言提供了自定义类加载器的功能,从而方便用户实现各种各样的类加载方式,例如从数据库加载,从配置文件加载,从加密文件加载等等。

2.       Class类用于描述java中一个类的相关信息。可以通过以下方式获取一个类的Class类:

1.1    类名.Class

1.2    对象.getClass()

1.3    Class.forName(“类名”):每个内存中的java对象都有一个 Class对象用来表述这个对象。常见的顺序是在实例化一个类的对象时,加载对象并生成它的Class对象。Class类的静态方法forName()方法用于先生成某个类对应的Class类对象,这时候内存中可以不存在实例化对象。然后使用Class类的newInstance()方法来调用原类的无参构造函数来实例化这个类的一个对象。这种模式常用于设计模式中的工厂模式,通过配置文件中的类名字符串动态的加载一个类。注:使用Class.forName方法时,系统会自动的执行类中的静态方法。

1.4    Class类的getClassLoader()方法用于返回这个类的类加载器。类加载器的基类是java.lang.ClassLoader类。它的loadClass()方法用于加载类。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值