corejava第10版

This commit is contained in:
deyou committed 2019-05-22 19:31:49 +08:00
1 parent 2021c3c227
commit 6165543dd3
1088 files changed
+94411

No files matched your search

@@ -0,0 +1,28 @@
package compiler;
import java.util.*;
/**
* A class loader that loads classes from a map whose keys are class names and whose values are byte
* code arrays.
* @version 1.00 2007-11-02
* @author Cay Horstmann
*/
public class MapClassLoader extends ClassLoader
{
private Map<String, byte[]> classes;
public MapClassLoader(Map<String, byte[]> classes)
{
this.classes = classes;
}
protected Class<?> findClass(String name) throws ClassNotFoundException
{
byte[] classBytes = classes.get(name);
if (classBytes == null) throw new ClassNotFoundException(name);
Class<?> cl = defineClass(name, classBytes, 0, classBytes.length);
if (cl == null) throw new ClassNotFoundException(name);
return cl;
}
}