我正在使用Apache BCEL动态创建 Java 类,每个类都有自己的关联图像。这些生成的类实现以下接口(interface):
interface ImageOwner {
byte[] getImage();
}
当动态实现“getImage”方法时,我可以生成字节码以在调用该方法时创建/返回字节数组,但如果可能的话,我宁愿只返回对字节数组的引用。是否可以将原始数据存储在 java 类文件中?
最佳答案
我真的不确定这里,因为这似乎是一个太简单的问题,但为了完整性,这将做我认为你想做的事情:
public class ImageOwnerImpl implements ImageOwner {
// A literal byte array. Tedious, but you could write code
// to auto-generate this source from a file
private byte[] imageByteArray = new byte[] { -128, 127, ...etc };
public byte[] getImage() {
return imageByteArray;
}
}
这是一个文字字节数组,它回答了“如何在类文件中存储字节”的问题。
大多数人会在运行时在构造函数中从文件加载图像字节,但是您可能有一些特殊的需要需要这种方法
关于java - 是否可以在java类文件中存储字节数组(原始数据)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9852283/