Contents | Prev | Next | IndexThe JavaTM Virtual Machine Specification


symbols A B C D E F G H I J L M N O P Q R S T U V W Z

A

aaload instruction
definition, 175
aastore instruction
compilation examples, arrays, 383
constraints, structural, 139
definition, 176
abrupt completion
method invocation, 74
abstract modifier
See also AbstractMethodError; ACC_ABSTRACT flag
in class declarations, 28
in method declarations, 32
AbstractMethodError
definition, 45
thrown by
invokeinterface, 280
invokespecial, 284
invokevirtual, 291
thrown during method resolution, 168
ACC_ABSTRACT flag
See also abstract modifier
(access_flags item of ClassFile structure), 96
(access_flags item of method_info structure), 115
(inner_class_access_flags item of InnerClasses_attribute structure), 127
ACC_FINAL flag
See also final modifier
(access_flags item of ClassFile structure), 96
(access_flags item of field_info structure), 113
(access_flags item of method_info structure), 115
(inner_class_access_flags item of InnerClasses_attribute structure), 127
ACC_INTERFACE flag
See also interfaces
(access_flags item of ClassFile structure), 96
(inner_class_access_flags item of InnerClasses_attribute structure), 127
ACC_NATIVE flag
See also native modifier
(access_flags item of method_info structure), 115
ACC_PRIVATE flag
See also private modifier
(access_flags item of field_info structure), 113
(access_flags item of method_info structure), 115
(inner_class_access_flags item of InnerClasses_attribute structure), 127
ACC_PROTECTED flag
See also protected modifier
(access_flags item of field_info structure), 113
(access_flags item of method_info structure), 115
(inner_class_access_flags item of InnerClasses_attribute structure), 127
ACC_PUBLIC flag
See also public modifier
(access_flags item of ClassFile structure), 96
(access_flags item of field_info structure), 113
(access_flags item of method_info structure), 115
(inner_class_access_flags item of InnerClasses_attribute structure), 127
ACC_STATIC flag
See also static modifier
(access_flags item of field_info structure), 113
(access_flags item of method_info structure), 115
(inner_class_access_flags item of InnerClasses_attribute structure), 127
ACC_STRICT flag
See also FP-strict floating-point mode, strictfp modifier
(access_flags item of method_info structure), 115
ACC_SUPER flag
See also superclasses
(access_flags item of ClassFile structure), 96
ACC_SYNCHRONIZED flag
See also synchronization
(access_flags item of method_info structure), 115
ACC_TRANSIENT flag
See also transient modifier
(access_flags item of field_info structure), 113
ACC_VOLATILE flag
See also volatile modifier
(access_flags item of field_info structure), 113
access control
See also access_flags item, IllegalAccessError
default access, 27
during dynamic method lookup
invokeinterface, 280
invokevirtual, 291
enforcement, 169
final fields
putfield, 348
putstatic, 350
instance initialization methods, 78
package private access, 169
private access, 27
protected access, 27
public access, 27
qualified names and, 26
access_flags item
See also access control
(ClassFile structure), 95
(field_info structure), 112
(method_info structure), 115
aconst_null instruction
definition, 178
actions
main memory subsystem
lock, 399
read, 398
unlock, 399
write, 399
prescient store, with threads, 404
thread
assign, 398
constraints on relationships among, 399
load, 399
lock, 399
store, 399
unlock, 399
use, 399
adding
double, dadd, 198
float, fadd, 228
int, iadd, 260
long, ladd, 309
algorithms
class file verification, 140
conversion of bytes item, CONSTANT_Float_info structure, to float value, 107
conversion of high_bytes and low_bytes items, CONSTANT_Double_info structure, to double value, 109
creation and loading
array classes, 158, 161
classes, 157
interfaces, 158
using a user-defined class loader, 160
using the default class loader, 160
string literals, derivation of, 157
alignment
code array, 121
Java virtual machine instructions, implementation implications, 80
aload instruction
See alsoastore instruction, wide instruction
constraints, static, 136
definition, 179
aload_<n> instructions
See also astore_<n> instructions
compilation examples
arrays, 382
catching exceptions, 388, 389, 391
compiling finally, 392, 393, 394
invoking methods, 376, 378
operand stack operations, 386
throwing exceptions, 387, 388
working with class instances, 379, 380
constraints, static, 136
definition, 180
ANDing
int, bitwise, iand, 262
long, bitwise, land, 311
anewarray instruction
compilation examples, arrays, 382
constraints, static, 136
definition, 181
areturn instruction
compilation examples
arrays, 383
working with class instances, 379, 380
constraints, structural, 138
definition, 182
arithmetic
adding
double, dadd, 198
float, fadd, 228
int, iadd, 260
long, ladd, 309
ArithmeticException, 44
thrown by idiv, 265
thrown by irem, 295
thrown by ldiv, 318
thrown by lrem, 326
compilation examples, 369
dividing
double, ddiv, 205
float, fdiv, 235
int, idiv, 265
long, ldiv, 318
exception, ArithmeticException, 44
floating-point, 75
instruction set, summary, 84
multiplying
double, dmul, 209
float, fmul, 239
int, imul, 276
long, lmul, 321
negating
double, dneg, 211
float, fneg, 241
int, ineg, 277
long, lneg, 322
remainder
double, drem, 212
float, frem, 212
int, irem, 295
long, lrem, 326
subtracting
double, dsub, 217
float, fsub, 247
int, isub, 301
long, lsub, 332
ArithmeticException
definition, 44
thrown by
idiv, 265
irem, 295
ldiv, 318
lrem, 326
array(s)
See also class(es); interfaces; references; types
accessing, 39
ArrayStoreException, 44
classes of, 15
compilation of, 381
components, 38
creating, 39
instruction summary, 88
multidimensional, multianewarray, 339
with components of primitive type, newarray, 343
with components of reference type, anewarray, 181
creation of, classes, 158, 161
definition, 38
dimensions, number limitation, 153
exceptions
ArrayIndexOutOfBoundsException, 39
NegativeArraySizeException, 44
field descriptor
dimension limits on, 104
specification, 101
initializing, 39
length, 38
fetching, arraylength, 183
loading from
byte or boolean, baload, 188
char, caload, 191
double, daload, 200
float, faload, 230
int, iaload, 261
long, laload, 310
reference, aaload, 175
short, saload, 354
manipulating, instruction summary, 88
storing into
byte or boolean, bastore, 189
char, castore, 192
double, dastore, 201
float, fastore, 231
int, iastore, 263
long, lastore, 312
reference, aastore, 176
short, sastore, 355
types, 11, 38
Java virtual machine mapping, 82
variables, 38
ArrayIndexOutOfBoundsException
See also IndexOutOfBoundsException
thrown by
aaload, 175
aastore, 177
baload, 188
bastore, 188
caload, 191
castore, 192
daload, 200
dastore, 201
faload, 230
fastore, 231
iaload, 261
iastore, 263
laload, 310
lastore, 312
saload, 354
sastore, 355
arraylength instruction
definition, 183
ArrayStoreException
definition, 44
thrown by aastore, 177
assembly language
Java virtual machine, format, 361
assignment
compatible, 13
failure, ArrayStoreException thrown when, 44
conversion, 21
assumptions
meaning of "must" in instruction descriptions, 171
astore instruction
See also aload instruction; ret instruction; wide instruction
constraints, static, 136
definition, 184
astore_<n> instructions
See also aload_<n> instructions; ret instruction
compilation examples
arrays, 382
catching exceptions, 388, 389, 391
compiling finally, 392, 393, 394
throwing exceptions, 388
working with class instances, 379
constraints, static, 136
definition, 185
athrow instruction
compilation examples
compiling finally, 392, 394
throwing exceptions, 387
constraints, structural, 139
definition, 186
attribute_info structure
(generic structure of items in attributes tables), 117
attribute_length item
(attribute_info generic structure), 117
(Code_attribute structure), 121
(ConstantValue_attribute structure), 119
(Deprecated_attribute structure), 133
(Exceptions_attribute structure), 124
(InnerClasses_attribute structure), 125
(LineNumberTable_attribute structure), 130
(LocalVariableTable_attribute structure), 131
(SourceFile_attribute structure), 128
(Synthetic_attribute structure), 128
attribute_name_index item
(attribute_info generic structure), 117
(Code_attribute structure), 121
(ConstantValue_attribute structure), 119
(Deprecated_attribute structure), 133
(Exceptions_attribute structure), 123
(InnerClasses_attribute structure), 125
(LineNumberTable_attribute structure), 129
(LocalVariableTable_attribute structure), 131
(SourceFile_attribute structure), 128
(Synthetic_attribute structure), 128
attributes
See also ClassFile structure:
attribute_length item
attribute_name_index item
attributes table
attributes_count item
See also predefined attributes:
Code_attribute
ConstantValue_attribute
Deprecated_attribute
Exceptions_attribute
InnerClasses_attribute
LineNumberTable_attribute
LocalVariableTable_attribute
SourceFile_attribute
Synthetic_attribute
defining and naming new, 118
attributes table
(ClassFile structure), 98
(Code_attribute structure), 123
(field_info structure), 114
(method_info structure), 116
attributes_count item
(ClassFile structure), 98
(Code_attribute structure), 123
(field_info structure), 114
(method_info structure), 116

Contents | Prev | Next | Index

The JavaTM Virtual Machine Specification
Copyright © 1999 Sun Microsystems, Inc. All rights reserved
Please send any comments or corrections to jvm@java.sun.com