cvmconst.java

来自「This is a resource based on j2me embedde」· Java 代码 · 共 127 行

JAVA
127
字号
/* * @(#)CVMConst.java	1.19 06/10/10 * * Copyright  1990-2008 Sun Microsystems, Inc. All Rights Reserved.   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER   *    * This program is free software; you can redistribute it and/or   * modify it under the terms of the GNU General Public License version   * 2 only, as published by the Free Software Foundation.    *    * This program is distributed in the hope that it will be useful, but   * WITHOUT ANY WARRANTY; without even the implied warranty of   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU   * General Public License version 2 for more details (a copy is   * included at /legal/license.txt).    *    * You should have received a copy of the GNU General Public License   * version 2 along with this work; if not, write to the Free Software   * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA   * 02110-1301 USA    *    * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa   * Clara, CA 95054 or visit www.sun.com if you need additional   * information or have any questions.  * */package consts;public interface CVMConst {    /*      * Class, field, and method access and modifier flags. Some of these     * values are different from the red book so they'll fit in one byte     */    public static final int CVM_CLASS_ACC_PUBLIC        = 0x01; /* visible to everyone */    public static final int CVM_CLASS_ACC_PRIMITIVE     = 0x02; /* primitive type class */    public static final int CVM_CLASS_ACC_FINALIZABLE   = 0x04; /* has non-trivial finalizer */    public static final int CVM_CLASS_ACC_REFERENCE     = 0x08; /* is a flavor of weak reference */    public static final int CVM_CLASS_ACC_FINAL         = 0x10; /* no further subclassing */    public static final int CVM_CLASS_ACC_SUPER         = 0x20; /* funky handling of invokespecial */    public static final int CVM_CLASS_ACC_INTERFACE     = 0x200;  /* class is an interface */    public static final int CVM_CLASS_ACC_ABSTRACT      = 0x400;  /* may not be instantiated */    public static final int CVM_CLASS_ACC_SYNTHETIC     = 0x1000; /* Not in source */    public static final int CVM_CLASS_ACC_ANNOTATION    = 0x2000; /* Declared as an annotation type */    public static final int CVM_CLASS_ACC_ENUM          = 0x4000; /* Declared as an enum type */    public static final int CVM_FIELD_ACC_PUBLIC        = 0x01; /* visible to everyone */    public static final int CVM_FIELD_ACC_PRIVATE       = 0x03; /* visible only to defining class */    public static final int CVM_FIELD_ACC_PROTECTED     = 0x02; /* visible to subclasses */    public static final int CVM_FIELD_ACC_STATIC        = 0x08; /* instance variable is static */    public static final int CVM_FIELD_ACC_FINAL         = 0x10; /* no subclassing/overriding */    public static final int CVM_FIELD_ACC_VOLATILE      = 0x40; /* cannot cache in registers */    public static final int CVM_FIELD_ACC_TRANSIENT     = 0x80; /* not persistant */    public static final int CVM_FIELD_ACC_SYNTHETIC     = 0x04; /* Not in source. */    public static final int CVM_FIELD_ACC_ENUM          = 0x20; /* Declared as an enum type. */    public static final int CVM_METHOD_ACC_PUBLIC       = 0x01; /* visible to everyone */    public static final int CVM_METHOD_ACC_PRIVATE      = 0x03; /* visible only to defining class */    public static final int CVM_METHOD_ACC_PROTECTED    = 0x02; /* visible to subclasses */    public static final int CVM_METHOD_ACC_STATIC       = 0x08; /* method is static */    public static final int CVM_METHOD_ACC_FINAL        = 0x10; /* no further overriding */    public static final int CVM_METHOD_ACC_SYNCHRONIZED = 0x20; /* wrap method call in monitor lock */    public static final int CVM_METHOD_ACC_BRIDGE       = 0x40; /* Bridge generated by javac. */    public static final int CVM_METHOD_ACC_VARARG       = 0x80; /* Declared with varargs. */    public static final int CVM_METHOD_ACC_NATIVE       = 0x100; /* implemented in C */    public static final int CVM_METHOD_ACC_ABSTRACT     = 0x400; /* no definition provided */    public static final int CVM_METHOD_ACC_STRICT       = 0x200; /* floating point is strict. */    public static final int CVM_METHOD_ACC_SYNTHETIC    = 0x04;  /* Not in source. */    /*      * CVMConstantPoolType     * See the enum CVMConstantPoolEntryTypeEnum in     * javavm/include/constantpool.h     *     * The first set is right out of the class file.     */    public static final int CVM_CONSTANT_Utf8		= 1;    public static final int CVM_CONSTANT_Unicode 	= 2;    public static final int CVM_CONSTANT_Integer	= 3;    public static final int CVM_CONSTANT_Float		= 4;    public static final int CVM_CONSTANT_Long		= 5;          public static final int CVM_CONSTANT_Double		= 6;    public static final int CVM_CONSTANT_Class		= 7;    public static final int CVM_CONSTANT_String		= 8;    public static final int CVM_CONSTANT_Fieldref	= 9;    public static final int CVM_CONSTANT_Methodref	= 10;    public static final int CVM_CONSTANT_InterfaceMethodref= 11;    public static final int CVM_CONSTANT_NameAndType	= 12;    /*     * These are the unresolved types (already processed into     * typeID's, but not into pointers).     */    public static final int CVM_CONSTANT_ClassTypeID	= 13;    public static final int CVM_CONSTANT_MethodTypeID	= 14;    public static final int CVM_CONSTANT_FieldTypeID	= 15;    /*     * These are fully resolved into pointers to the     * appropriate data structures. You should always see these     * with the CVM_CONSTANT_POOL_ENTRY_RESOLVED bit set.     * The scalar numbers, such as Integer, Float, Long, are also     * considered as resolved, and should have that bit set.     */    public static final int CVM_CONSTANT_ClassBlock	= 19;    public static final int CVM_CONSTANT_FieldBlock	= 20;    public static final int CVM_CONSTANT_MethodBlock	= 21;    public static final int CVM_CONSTANT_StringObj	= 22; /* ROM string */    public static final int CVM_CONSTANT_StringICell	= 23; /* classloaded string */    public static final int CVM_CONSTANT_Invalid	= 24;    public static final int CVM_CONSTANT_POOL_ENTRY_RESOLVED = 0x80;    public static final int CVM_CONSTANT_POOL_ENTRY_RESOLVING = 0x40;    public static final int CVM_CONSTANT_POOL_ENTRY_TYPEMASK = 0x3F;    /*     * Implementation details we must know to compute     * field offsets.     * Note that header size is the minimum. Alternative GC's     * might require more, so will require a change here!!!!!     */    public static final int ObjHeaderWords		= 2;    public static final int BytesPerWord		= 4;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?