Java的内部类与类的加载器
内部类
class A { /pic/pic/pic/*static void say1() { }*/ void say2() { } } /pic/pic/pic/pic/pic/* * 方法中的局部内部类的调用,需要在声明后 因为, * 在方法里的执行顺序是 从上往下,而这个类 * 就相当于一个 局部 变量 当然 要先声明,再使用 */ new Inner3().print(); } }
类的加载器 java.lang.ClassLoader
java.lang.ClassLoader 类的基本职责就是根据一个指定的类的名称,找到或者生成其对应的字节代码,然后从这些字节代码中定义出一个 Java 类,即java.lang.Class 类的一个实例。除此之外,ClassLoader 还负责加载 Java 应用所需的资源,如图像文件和配置文件等。不过本文只讨论其加载类的功能。为了完成加载类的这个职责,ClassLoader 提供了一系列的方法:
getParent()返回该类加载器的父类加载器。
loadClass(String name)加载名称为 name 的类,返回的结果是 java.lang.Class 类的实例。
findClass(String name)查找名称为 name 的类,返回的结果是 java.lang.Class 类的实例。
findLoadedClass(String name)查找名称为 name 的已经被加载过的类,返回的结果是 java.lang.Class 类的实例。
defineClass(String name, byte[] b, int off, int len)把字节数组 b 中的内容转换成 Java 类,返回的结果是 java.lang.Class 类的实例。这个方法被声明为final 的。
resolveClass(Class c)链接指定的 Java 类。
public class ClassLoaderTest extends ClassLoader { public static void main(String[] args) throws SecurityException, NoSuchMethodException { /pic/pic/pic/pic/pic/pic/pic/p>
【Java的内部类与类的加载器】相关文章:
java类加载器10-31
Java中的类加载器03-09
Java类加载器类介绍03-05
Java语言的内部类02-03
Java中的匿名内部类的小结01-03
Java内部类详解及实例分析12-15
Java的类02-22
java编译计算器09-26