⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 eclassloader.java

📁 jrc-src0.4.00源代码发布版(Java客户端框架)
💻 JAVA
字号:
package efly.clientframe.core.loader;

/**
 * @author efly
 * @version 1.0.0,11/22/02
 */
public final class EClassLoader extends ClassLoader {
	private static int maxsize = 10000;
	private static EClassLoader instance = null;
	/**
	 * Constructor for EflyClassLoader.
	 */
	protected EClassLoader() {
		super();
	}

	public synchronized static EClassLoader getEClassLoader() {
		if (instance == null)
			instance = new EClassLoader();
		return instance;
	}

	public Class find(String classname) {
		try {
			Class clazz = this.findLoadedClass(classname);
			System.out.println(clazz.getName() + " is load");
			return clazz;
		} catch (Exception e) {
			return null;
		}
	}

	public Class load(String namefile, String classname)
		throws java.lang.Exception {
		Class clazz = find(classname);
		if (clazz != null)
			return clazz;
		java.io.FileInputStream in = new java.io.FileInputStream(namefile);
		byte[] classbyte = new byte[maxsize];

		int readsize;
		readsize = in.read(classbyte);
		System.out.println("读文件长:" + readsize);
		in.close();
		return defineClass(classname, classbyte, 0, readsize);
	}

	public void link(String namefile, String classname)
		throws java.lang.Exception {
		Class clink = load(namefile, classname);
		resolveClass(clink);
	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -