Package org.aoju.bus.core.compiler
Class JavaClassFileObject
java.lang.Object
javax.tools.SimpleJavaFileObject
org.aoju.bus.core.compiler.JavaClassFileObject
- All Implemented Interfaces:
FileObject,JavaFileObject
Java 字节码文件对象,用于在内存中暂存class字节码,从而可以在ClassLoader中动态加载
- Since:
- Java 17+
- Author:
- Kimi Liu
-
Nested Class Summary
Nested classes/interfaces inherited from interface javax.tools.JavaFileObject
JavaFileObject.Kind -
Field Summary
Fields inherited from class javax.tools.SimpleJavaFileObject
kind, uri -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription获得字节码输入流 编译器编辑源码后,我们将通过此输出流获得编译后的字节码,以便运行时加载类获得字节码输出流 编译器编辑源码时,会将编译结果输出到本输出流中Methods inherited from class javax.tools.SimpleJavaFileObject
delete, getAccessLevel, getCharContent, getKind, getLastModified, getName, getNestingKind, isNameCompatible, openReader, openWriter, toString, toUri
-
Constructor Details
-
JavaClassFileObject
构造- Parameters:
className- 编译后的class文件的类名
-
-
Method Details
-
openInputStream
获得字节码输入流 编译器编辑源码后,我们将通过此输出流获得编译后的字节码,以便运行时加载类- Specified by:
openInputStreamin interfaceFileObject- Overrides:
openInputStreamin classSimpleJavaFileObject- Returns:
- 字节码输入流
-
openOutputStream
获得字节码输出流 编译器编辑源码时,会将编译结果输出到本输出流中- Specified by:
openOutputStreamin interfaceFileObject- Overrides:
openOutputStreamin classSimpleJavaFileObject- Returns:
- 字节码输出流
-