本文整理汇总了Java中com.sun.org.apache.bcel.internal.Constants.ACC_INTERFACE属性的典型用法代码示例。如果您正苦于以下问题:Java Constants.ACC_INTERFACE属性的具体用法?Java Constants.ACC_INTERFACE怎么用?Java Constants.ACC_INTERFACE使用的例子?那么恭喜您, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在类com.sun.org.apache.bcel.internal.Constants
的用法示例。
在下文中一共展示了Constants.ACC_INTERFACE属性的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: accessToString
/**
* Convert bit field of flags into string such as `static final'.
*
* Special case: Classes compiled with new compilers and with the
* `ACC_SUPER' flag would be said to be "synchronized". This is
* because SUN used the same value for the flags `ACC_SUPER' and
* `ACC_SYNCHRONIZED'.
*
* @param access_flags Access flags
* @param for_class access flags are for class qualifiers ?
* @return String representation of flags
*/
public static final String accessToString(int access_flags,
boolean for_class)
{
StringBuffer buf = new StringBuffer();
int p = 0;
for(int i=0; p < Constants.MAX_ACC_FLAG; i++) { // Loop through known flags
p = pow2(i);
if((access_flags & p) != 0) {
/* Special case: Classes compiled with new compilers and with the
* `ACC_SUPER' flag would be said to be "synchronized". This is
* because SUN used the same value for the flags `ACC_SUPER' and
* `ACC_SYNCHRONIZED'.
*/
if(for_class && ((p == Constants.ACC_SUPER) || (p == Constants.ACC_INTERFACE)))
continue;
buf.append(Constants.ACCESS_NAMES[i] + " ");
}
}
return buf.toString().trim();
}
示例2: readClassInfo
/**
* Read information about the class and its super class.
* @throws IOException
* @throws ClassFormatException
*/
private final void readClassInfo() throws IOException, ClassFormatException
{
access_flags = file.readUnsignedShort();
/* Interfaces are implicitely abstract, the flag should be set
* according to the JVM specification.
*/
if((access_flags & Constants.ACC_INTERFACE) != 0)
access_flags |= Constants.ACC_ABSTRACT;
if(((access_flags & Constants.ACC_ABSTRACT) != 0) &&
((access_flags & Constants.ACC_FINAL) != 0 ))
throw new ClassFormatException("Class can't be both final and abstract");
class_name_index = file.readUnsignedShort();
superclass_name_index = file.readUnsignedShort();
}
示例3: isInterface
public final boolean isInterface() {
return (access_flags & Constants.ACC_INTERFACE) != 0;
}
示例4: classOrInterface
/**
* @return "class" or "interface", depending on the ACC_INTERFACE flag
*/
public static final String classOrInterface(int access_flags) {
return ((access_flags & Constants.ACC_INTERFACE) != 0)? "interface" : "class";
}
示例5: isClass
public final boolean isClass() {
return (access_flags & Constants.ACC_INTERFACE) == 0;
}