zoukankan      html  css  js  c++  java
  • 设计一个类加载器

    类加载器用于实现类的加载动作,但它在Java程序中起到的作用远远不限于类加载阶段。对于任何一个类,都需要由加载它的类加载器和这个类本身来决定其在Java虚拟机中的唯一性

     1 package com.study.classLoad;
     2 
     3 import java.io.IOException;
     4 import java.io.InputStream;
     5 /**
     6  * 设计一个简单的类加载器
     7  * @author xiaojuan
     8  *
     9  */
    10 public class ClassLoaderTest {
    11 
    12     public static void main(String[] args) throws InstantiationException, IllegalAccessException, ClassNotFoundException {
    13         // TODO Auto-generated method stub
    14         ClassLoader myLoader = new ClassLoader(){
    15 
    16             @Override
    17             public Class<?> loadClass(String name)
    18                     throws ClassNotFoundException {
    19                 try {
    20                     //String filename = "com.study.classLoad.ClassLoaderTest";
    21                     String filename = name.substring(name.lastIndexOf(".") + 1) + ".class";
    22                     InputStream is = getClass().getResourceAsStream(filename);
    23                     if (is == null) {
    24                         return super.loadClass(name);
    25                     }
    26                     byte[] b = new byte[is.available()];
    27                     is.read(b);
    28                     return defineClass(name, b, 0, b.length);
    29                 } catch (IOException e) {
    30                     throw new ClassNotFoundException();
    31                 }
    32                 
    33             }
    34             
    35         };
    36         Object obj = myLoader.loadClass("com.study.classLoad.ClassLoaderTest").newInstance();
    37         System.out.println(obj.getClass());
    38         System.out.println(obj instanceof com.study.classLoad.ClassLoaderTest);
    39         
    40     }
    41 
    42 }
  • 相关阅读:
    gdal source code c++ make windows
    libjpeg安装和使用
    window 安装gdal和python
    gdal和python在windows上的安装
    将博客搬至CSDN
    ue4 Worldmachine 结合使用
    织梦学习
    前端 css html js javascript jquery
    jquery 表单验证插件
    gif动图生成
  • 原文地址:https://www.cnblogs.com/zk753159/p/9615355.html
Copyright © 2011-2022 走看看