symbols
A
B
C
D
E
F
G
H
I
J
L
M
N
O
P
Q
R
S
T
U
V
W
Z
C
- C character
- meaning in field or method descriptor, 101
- caload instruction
- definition, 191
- casting
- See also numeric
- checkcast, 193
- checkcast instruction, constraints, static, 136
- exceptions, ClassCastException, checkcast, 194
- invocation conversion, context, 16
- not permitted between boolean types and other types, 11
- castore instruction
- definition, 192
- catch clause(s)
- See also exceptions
- exception handling role, 41, 78
- ordering of, 79
- try statement, exception handler parameter variables created by, 14
- catch_type item
- (Code_attribute structure), 122
- char type
- arithmetic not directly supported, 84
- converting int to, i2c, 255
- definition, 62
- instruction set handling of, 81
- loading from arrays, caload, 191
- storing into arrays, castore, 192
- value range, 63
- checkcast instruction
- See also instanceof instruction
- constraints, static, 136
- definition, 193
- checking
- types
- checkcast, 193
- instanceof, 278
- class file format
- See also ClassFile structure
- byte storage order, 93
- (chapter), 93
- data, methods that can read, 93
- integrity verification, 140
- class loader
- bootstrap, 158
- ClassLoader
- <clinit> method, as class or interface initialization method, 78, 155
- loading performed by, 48
- defining, 159
- delegating to another, 159
- initiating, 159
- loading
- by a user-defined, 160
- by the bootstrap, 160
- loading constraints, 162
- user-defined, 158
- class(es)
- See also array; class file format; class loader; ClassFile structure; interfaces
- Class object, initialization role, 52
- ClassCastException, 44
- creation, 158
- declaration, 28
- derivation of symbolic references to at run time, 156
- final, 28
- finalization of, 57
- get static fields from, getstatic, 250
- initial, specifying to Java virtual machine, 46, 158
- initialization, process, unrecoverable runtime exceptions associated with, 44
- instances
- creation expression, 12
- uninitialized, structural constraints, 135
- libraries, Java virtual machine support for, 91
- members of, 29
- modifiers, 28
- names, name_index item
- (CONSTANT_Class_info structure) as reference to, 104
- put into static fields, putstatic, 350
- resolution, 166
- static methods
- invocation instruction summary, 89
- invoking, invokestatic, 288
- types, 11
- compared with, 15
- members of, 25
- as reference type, 66
- verification process, unrecoverable runtime exceptions associated with, 45
- class_index item
- (CONSTANT_Fieldref_info structure), 106
- (CONSTANT_InterfaceMethodref_info structure), 106
- (CONSTANT_Methodref_info structure), 106
- ClassCastException
- casting conversion as cause of, 23
- definition, 44
- narrowing reference conversion as cause of, 19
- thrown by checkcast, 194
- ClassCircularityError
- definition, 49
- as linking error, 45
- thrown during
- class or interface loading, 164
- class or interface resolution, 164
- classes array
- (InnerClasses_attribute_info structure), 125
- ClassFile structure
- See also ClassFile substructures:
- access_flags item
- attributes table
- attributes_count item
- constant_pool table
- constant_pool_count item
- field_info structure
- fields table
- fields_count item
- interfaces array
- interfaces_count item
- magic item
- major_version item
- method_info structure
- methods table
- methods_count item
- minor_version item
- super_class item
- this_class item
- constant_pool table, Java virtual machine representation, 70
- format
- ability to read as Java virtual machine implementation requirement, 61
- as overview, 61
- integrity verification, 140
- syntax and item descriptions, 93
- ClassFormatError
- definition, 49
- as linking error, 45
- <clinit> method
- as class or interface initialization method name, 78
- constant_pool table, reference to, 105
- invocation of, static constraints, 135
- name_index item (method_info structure) reference, 116
- code
- See also code array; Code_attribute structure
- blocks, synchronization, instruction summary, 90
- code array
- (Code_attribute structure)
- constraints, static, 133
- constraints, structural, 137
- size and location, 120
- data-flow analysis, 141
- Code_attribute structure
- (method_info structure), 120
- code_length item
- (Code_attribute structure), 121
- comparisons
- double, dcmp<op>, 202
- float, fcmp<op>, 232
- int
- if_icmp<cond>, 267
- with zero, if<cond>, 269
- long, lcmp, 313
- numerical
- floating-point positive and negative zero, 65
- implications of unordered NaN values, 65
- reference
- if_acmp<cond>, 266
- with null, ifnull, 271, 272
- compilation
- for the Java virtual machine, (chapter), 363
- Java virtual machine assembly language, format, 364
- completion
- method invocation
- abrupt, 74
- normal, 74
- computational type
- definition, 82
- conditional
- See also control flow
- branch, instruction summary, 89
- CONSTANT_Class_info structure
- class names referenced from, 99
- (constant_pool table), items and meaning, 103
- derivation of symbolic reference from at run time, 156
- super_class item, as ClassFile structure reference to a, 97
- this_class item, as ClassFile structure reference to a, 97
- CONSTANT_Class tag
- (CONSTANT_class_info structure), 104
- CONSTANT_Double_info structure
- (constant_pool table), items and meaning, 108
- derivation of constant value from at run time, 157
- CONSTANT_Double tag
- (CONSTANT_Double_info structure), 108
- CONSTANT_Fieldref_info structure
- (constant_pool table), items and meaning, 105
- derivation of symbolic reference from at run time, 156
- CONSTANT_Fieldref tag
- (CONSTANT_Fieldref_info structure), 105
- CONSTANT_Float_info structure
- (constant_pool table), items and meaning, 107
- derivation of constant value at run time, 157
- CONSTANT_Float tag
- (CONSTANT_float_info structure), 107
- CONSTANT_Integer_info structure
- (constant_pool table), items and meaning, 107
- derivation of constant values at run time, 157
- CONSTANT_Integer tag
- (CONSTANT_Integer_info structure), 107
- CONSTANT_InterfaceMethodref_info
structure
- (constant_pool table), items and meaning, 105
- derivation of symbolic reference from at run time, 156
- CONSTANT_InterfaceMethodref tag
- (CONSTANT_InterfaceMethodref_info structure), 105
- CONSTANT_Long_info structure
- (constant_pool table), items and meaning, 109
- derivation of constant value at run time, 157
- CONSTANT_Long tag
- (CONSTANT_Long_info structure), 108
- CONSTANT_Methodref_info structure
- (constant_pool table), items and meaning, 105
- derivation of symbolic reference from at run time, 156
- CONSTANT_Methodref tag
- (CONSTANT_Methodref_info structure), 105
- CONSTANT_NameAndType_info structure
- class names referenced from, 99
- (constant_pool table), items and meaning, 110
- derivation of symbolic reference from at run time, 157
- indirect use of at run time, 157
- CONSTANT_NameAndType tag
- (CONSTANT_NameAndType_info structure), 110
- constant_pool_count item
- (ClassFile structure), 95
- constant_pool table
- (ClassFile structure), 95, 103
- constantvalue_index item values (table), 119
- derivation of symbolic references from at run time, 155
- tag values (table), 103
- CONSTANT_String_info structure
- (constant_pool table), items and meaning, 106
- derivation of symbolic reference from at run time, 157
- CONSTANT_String tag
- (CONSTANT_String_info structure), 106
- CONSTANT_Utf8_info structure
- attribute_name_index item
- (Code_attribute structure), 121
- (ConstantValue_attribute structure), 119
- (Exceptions_attribute structure), 124
- (InnerClasses_attribute structure), 125
- (LineNumberTable_attribute structure), 130
- (LocalVariableTable_attribute structure), 131
- (SourceFile_attribute structure), 117, 128
- (Deprecated_attribute structure), 133
- (Synthetic_attribute structure), 128
- class names represented as, 99
- (constant_pool table), items and meaning, 112
- indirect use of at run time, 158
- (name_index item)
- (CONSTANT_Class_info structure) as reference to a, 104
- (string_index item)
- (CONSTANT_String_info structure) as a reference to, 107
- CONSTANT_Utf8 tag
- (CONSTANT_Utf8_info structure), 111
- constants
- See also constant_pool table; literals; variables
- attribute type values (table), 119
- constant pool, class file format
- size limitation, 152
- static constraint checking, 140
- CONSTANT_Class_info structure
- derivation of symbolic reference from at run time, 156
- items and meaning, 104
- CONSTANT_Double_info structure
- derivation of constant value from at run time, 157
- items and meaning, 108
- CONSTANT_Fieldref_info structure
- derivation of symbolic reference from at run time, 156
- items and meaning, 106
- CONSTANT_Float_info structure
- derivation of constant value from at run time, 157
- items and meaning, 107
- CONSTANT_Integer_info structure
- derivation of constant value from at run time, 157
- items and meaning, 107
- CONSTANT_InterfaceMethodref_info structure
- derivation of symbolic reference from at run time, 156
- items and meaning, 106
- CONSTANT_Long_info structure
- derivation of constant value from at run time, 157
- items and meaning, 109
- CONSTANT_Methodref_info structure
- derivation of symbolic reference from at run time, 156
- items and meaning, 106
- CONSTANT_NameAndType_info structure
- indirect use of at run time, 157
- items and meaning, 110
- CONSTANT_String_info structure
- derivation of symbolic reference from at run time, 157
- items and meaning, 106
- CONSTANT_Utf8_info structure
- descriptor_index item, CONSTANT_NameAndType_info reference, 110
- indirect use of at run time, 158
- items and meaning, 110
- ConstantValue_attribute structure
- field_info structure value, 114
- support required for, 118
- fields, 36
- as interface members, 35
- final, 30
- floating-point
- double, CONSTANT_Double_info structure representation, 108
- float, CONSTANT_Float_info structure representation, 107
- increment local variable by, iinc, 273
- integer
- int, CONSTANT_Integer_info structure representation, 107
- long, CONSTANT_Long_info structure representation, 108
- load and store instructions, summary, 83
- pushing
- double, dconst_<d>, 204
- float, fconst_<f>, 234
- int, iconst_<i>, 264
- ldc, 315
- long, lconst_<l>, 314
- wide index, ldc_w, 316
- runtime constant pool, 70
- derivation of, 155
- frame reference, dynamic linking supported by, 71, 74
- ConstantValue_attribute structure
- (attributes table of field_info structure), 114
- (field_info structure), 119
- constantvalue_index structure
- (ConstantValue_attribute structure), 119
- constraints
- class loading, 162
- enforcement of, by class file verifier, 171
- Java virtual machine code
- static, specification of, 133
- structural, specification of, 137
- operand stack manipulation, 73
- constructors
- default, 34
- definition, 34
- instance creation procedures, 55
- as instance initialization method, 78
- not members of a class, 29
- control flow
- See also threads
- branch on
- int comparison with zero, if<cond>, 269
- int comparison, if_icmp<cond>, 267
- reference comparison with null, ifnonnull, 271
- reference comparison with null, ifnull, 272
- reference comparison, if_acmp<cond>, 266
- compilation examples, for keyword, 366
- compilation of, while keyword, 372
- instruction summary, 88
- instructions, code verification, Pass 3 - bytecode verifier, 142
- unconditional goto
- goto, 252
- wide index, goto_w, 253
- conversions
- See also numeric; primitive types
- assignment, 21
- bytes item, CONSTANT_Float_info structure, algorithm, 107
- casting, 23
- contexts, 16
- method invocation, 22
- narrowing primitive
- definition, 18
- double to float, d2f, 195
- double to int, d2i, 196
- double to long, d2l, 197
- float to int, f2i, 226
- float to long, f2l, 227
- impact on precision, 87
- int to byte, i2b, 254
- int to char, i2c, 255
- int to short, i2s, 259
- long to int, l2i, 308
- support for, 86
- narrowing reference, 19
- numeric promotion
- binary, 23
- unary, 23
- types, 17
- instructions, 86
- value set, 77
- widening primitive
- definition, 17
- float to double, f2d, 225
- impact on numeric precision, 86
- int to double, i2d, 256
- int to float, i2f, 257
- int to long, i2l, 258
- long to double, l2d, 306
- long to float, l2f, 307
- support for, 86
- widening reference, 19
- cp_info structure
- (generic form of items in the constant_pool table), 103
- tag values (table), 101, 103
- creating
- array classes, 158, 161
- arrays
- multidimensional, multianewarray, 339
- primitive type, newarray, 343
- reference type, anewarray, 181
- class instances
- instruction summary, 88
- new, 341
- classes and interfaces, 158
- current
- class, 72
- frame, 71
- method, 71
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
Java VM Specification