📄 fieldinfo.java
字号:
/**
*
*/
package gen.info;
import gen.ClassFile;
import gen.info.attr.AttributeInfo;
import java.io.DataOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
/**
* @author liuyi
*
*/
public class FieldInfo {
private short accessFlags;
/** index of constant pool, referring to a ConstantUtf8Info */
private short nameIndex;
/** index of constant pool, referring to a ConstantUtf8Info */
private short descriptor_index;
/** attributes count = attributes.size() */
private List attributes;
//convenience for FieldrefInfo seeking
private int constFieldInfoIndex;
private ClassFile classFile;
public FieldInfo(ClassFile classFile){
this.classFile = classFile;
attributes = new ArrayList();
}
public void setAccessFlags(int accessFlags){
this.accessFlags = (short)accessFlags;
}
public void setNameIndex(short nameIndex){
this.nameIndex = nameIndex;
}
public void setDescriptor_index(short descriptor_index){
this.descriptor_index = descriptor_index;
}
public void setConstFieldInfoIndex(int constFieldInfoIndex){
this.constFieldInfoIndex = constFieldInfoIndex;
}
public int getNameIndex(){
return nameIndex;
}
public int getConstFieldrefInfoIndex() {
return constFieldInfoIndex;
}
/*public void addAttribute(AttributeInfo attr) {
attributes.add(attr);
}*/
public void toBinary(DataOutputStream writer) throws IOException{
writer.writeShort(accessFlags);
writer.writeShort(nameIndex);
writer.writeShort(descriptor_index);
writer.writeShort(attributes.size());
}
public String toString(){
String ret = "FieldInfo:\n access_flags\t" + accessFlags + "\n " + "name:descriptor\t#" + nameIndex + ":#"
+ descriptor_index + "\t// " + classFile.getRefString(nameIndex) + ":"
+ classFile.getRefString(descriptor_index).replaceAll("/", ".");
return ret;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -