WritableEntry
public class ClassFile extends java.lang.Object implements WritableEntry
Constructor | Description |
---|---|
ClassFile(java.lang.String name,
int accessFlags,
java.lang.String superclass,
int version,
java.lang.ClassLoader classLoader,
java.lang.String... interfaces) |
|
ClassFile(java.lang.String name,
int accessFlags,
java.lang.String superclass,
java.lang.ClassLoader classLoader,
java.lang.String... interfaces) |
|
ClassFile(java.lang.String name,
int accessFlags,
java.lang.String superclass,
java.lang.String... interfaces) |
|
ClassFile(java.lang.String name,
java.lang.String superclass,
java.lang.ClassLoader classLoader,
java.lang.String... interfaces) |
|
ClassFile(java.lang.String name,
java.lang.String superclass,
java.lang.String... interfaces) |
Modifier and Type | Method | Description |
---|---|---|
ClassMethod |
addConstructor(java.lang.reflect.Constructor<?> method) |
Adds a constructor with the same signiture as the given constrcutor, including exception types
|
ClassField |
addField(int accessFlags,
java.lang.String name,
java.lang.Class<?> type) |
|
ClassField |
addField(int accessFlags,
java.lang.String name,
java.lang.Class<?> type,
java.lang.String genericSignature) |
|
ClassField |
addField(int accessFlags,
java.lang.String name,
java.lang.String descriptor) |
Adds a field with the given name and descriptor.
|
ClassField |
addField(int accessFlags,
java.lang.String name,
java.lang.String descriptor,
java.lang.String signature) |
|
ClassField |
addField(java.lang.reflect.Field field) |
|
void |
addInterface(java.lang.String iface) |
|
ClassMethod |
addMethod(int accessFlags,
java.lang.String name,
java.lang.String returnType,
java.lang.String... parameters) |
|
ClassMethod |
addMethod(java.lang.reflect.Method method) |
Adds a method with the same signiture as the given method, including exception types
|
java.lang.Class<?> |
define() |
|
java.lang.Class<?> |
define(java.lang.ClassLoader loader) |
Deprecated.
|
java.lang.Class<?> |
define(java.lang.ClassLoader loader,
java.security.ProtectionDomain domain) |
Deprecated.
|
java.lang.Class<?> |
define(java.security.ProtectionDomain domain) |
|
java.lang.ClassLoader |
getClassLoader() |
|
ConstPool |
getConstPool() |
|
java.lang.String |
getDescriptor() |
returns the type descriptor for the class
|
java.util.Set<ClassField> |
getFields() |
|
java.util.List<java.lang.String> |
getInterfaces() |
|
java.util.Set<ClassMethod> |
getMethods() |
|
java.lang.String |
getName() |
Returns the generated class name
|
AnnotationsAttribute |
getRuntimeVisibleAnnotationsAttribute() |
|
java.lang.String |
getSuperclass() |
|
byte[] |
toBytecode() |
|
void |
write(ByteArrayDataOutputStream stream) |
public ClassFile(java.lang.String name, java.lang.String superclass, java.lang.String... interfaces)
public ClassFile(java.lang.String name, int accessFlags, java.lang.String superclass, java.lang.String... interfaces)
public ClassFile(java.lang.String name, java.lang.String superclass, java.lang.ClassLoader classLoader, java.lang.String... interfaces)
public ClassFile(java.lang.String name, int accessFlags, java.lang.String superclass, java.lang.ClassLoader classLoader, java.lang.String... interfaces)
public ClassFile(java.lang.String name, int accessFlags, java.lang.String superclass, int version, java.lang.ClassLoader classLoader, java.lang.String... interfaces)
public void addInterface(java.lang.String iface)
public ClassField addField(int accessFlags, java.lang.String name, java.lang.String descriptor)
public ClassField addField(int accessFlags, java.lang.String name, java.lang.String descriptor, java.lang.String signature)
public ClassField addField(int accessFlags, java.lang.String name, java.lang.Class<?> type)
public ClassField addField(int accessFlags, java.lang.String name, java.lang.Class<?> type, java.lang.String genericSignature)
public ClassField addField(java.lang.reflect.Field field)
public ClassMethod addMethod(int accessFlags, java.lang.String name, java.lang.String returnType, java.lang.String... parameters)
public ClassMethod addMethod(java.lang.reflect.Method method)
The new method will have the same modifier as the original method, except that the abstract and native flags will be stripped.
TODO: annotations and signiture attribute
public ClassMethod addConstructor(java.lang.reflect.Constructor<?> method)
TODO: annotations and signiture attribute
public void write(ByteArrayDataOutputStream stream) throws java.io.IOException
write
in interface WritableEntry
java.io.IOException
public java.lang.Class<?> define()
@Deprecated public java.lang.Class<?> define(java.lang.ClassLoader loader)
public java.lang.Class<?> define(java.security.ProtectionDomain domain)
@Deprecated public java.lang.Class<?> define(java.lang.ClassLoader loader, java.security.ProtectionDomain domain)
public byte[] toBytecode()
public java.lang.ClassLoader getClassLoader()
public ConstPool getConstPool()
public java.lang.String getDescriptor()
public AnnotationsAttribute getRuntimeVisibleAnnotationsAttribute()
public java.lang.String getName()
public java.lang.String getSuperclass()
public java.util.List<java.lang.String> getInterfaces()
public java.util.Set<ClassField> getFields()
public java.util.Set<ClassMethod> getMethods()
Copyright © 2018. All rights reserved.