public class ByteArrayClassPath extends Object implements ClassPath
ByteArrayClassPath
contains bytes that is served as
a class file to a ClassPool
. It is useful to convert
a byte array to a CtClass
object.
For example, if you want to convert a byte array b
into a CtClass
object representing the class with a name
classname
, then do as following:
ClassPool cp = ClassPool.getDefault(); cp.insertClassPath(new ByteArrayClassPath(classname, b)); CtClass cc = cp.get(classname);
The ClassPool
object cp
uses the created
ByteArrayClassPath
object as the source of the class file.
A ByteArrayClassPath
must be instantiated for every
class. It contains only a single class file.
Modifier and Type | Field and Description |
---|---|
protected byte[] |
classfile |
protected String |
classname |
Constructor and Description |
---|
ByteArrayClassPath(String name,
byte[] classfile) |
Modifier and Type | Method and Description |
---|---|
void |
close()
Closes this class path.
|
URL |
find(String classname)
Obtains the URL.
|
InputStream |
openClassfile(String classname)
Opens the class file.
|
String |
toString() |
protected String classname
protected byte[] classfile
public ByteArrayClassPath(String name, byte[] classfile)
public InputStream openClassfile(String classname)
openClassfile
in interface ClassPath
classname
- a fully-qualified class nameTranslator
Copyright © 2019. All rights reserved.