𝔖 Scriptorium
✦   LIBER   ✦

πŸ“

The Java(TM) Language Specification

✍ Scribed by James Gosling Bill Joy Guy L. Steele


Publisher
Addison Wesley Publishing Company
Year
1996
Tongue
English
Leaves
852
Category
Library

⬇  Acquire This Volume

No coin nor oath required. For personal study only.

✦ Synopsis


Written by the inventors of the technology, The Java Language Specification is the definitive technical reference for the Java programming language. It provides complete, accurate, and detailed coverage of the entire language and its syntax. If you want to know the precise meaning of Java's constructs, this is the source for you.

✦ Table of Contents


Series Foreword......Page 21
Preface......Page 23
Introduction......Page 27
1.1 Example Programs......Page 31
1.2 References......Page 32
2.2 The Lexical Grammar......Page 33
2.4 Grammar Notation......Page 34
3.1 Unicode......Page 37
3.3 Unicode Escapes......Page 38
3.4 Line Terminators......Page 39
3.5 Input Elements and Tokens......Page 40
3.7 Comments......Page 41
3.8 Identifiers......Page 43
3.9 Keywords......Page 44
3.10.1 Integer Literals......Page 45
3.10.2 Floating-Point Literals......Page 48
3.10.3 Boolean Literals......Page 49
3.10.4 Character Literals......Page 50
3.10.5 String Literals......Page 51
3.10.6 Escape Sequences for Character and String L.........Page 52
3.11 Separators......Page 53
3.12 Operators......Page 54
Types, Values, and Variables......Page 55
4.2 Primitive Types and Values......Page 56
4.2.2 Integer Operations......Page 57
4.2.3 Floating-Point Types and Values......Page 59
4.2.4 Floating-Point Operations......Page 60
4.2.5 The boolean Type and boolean Values......Page 62
4.3 Reference Types and Values......Page 63
4.3.1 Objects......Page 64
4.3.2 The Class Object......Page 66
4.3.3 The Class String......Page 67
4.4 Where Types Are Used......Page 68
4.5 Variables......Page 69
4.5.3 Kinds of Variables......Page 70
4.5.4 Initial Values of Variables......Page 72
4.5.5 Variables Have Types, Objects Have Classes......Page 73
Conversions and Promotions......Page 77
5.1.2 Widening Primitive Conversions......Page 80
5.1.3 Narrowing Primitive Conversions......Page 81
5.1.4 Widening Reference Conversions......Page 84
5.1.5 Narrowing Reference Conversions......Page 85
5.1.7 Forbidden Conversions......Page 86
5.2 Assignment Conversion......Page 87
5.3 Method Invocation Conversion......Page 92
5.5 Casting Conversion......Page 93
5.6 Numeric Promotions......Page 98
5.6.1 Unary Numeric Promotion......Page 99
5.6.2 Binary Numeric Promotion......Page 100
Names......Page 103
6.1 Declarations......Page 104
6.2 Names and Identifiers......Page 105
6.3 Scope of a Simple Name......Page 107
6.3.1 Hiding Names......Page 109
6.4.1 The Members of a Package......Page 111
6.4.2 The Members of a Class Type......Page 112
6.4.3 The Members of an Interface Type......Page 113
6.4.4 The Members of an Array Type......Page 114
6.5 Determining the Meaning of a Name......Page 115
6.5.1 Syntactic Classification of a Name According.........Page 116
6.5.2 Reclassification of Contextually Ambiguous N.........Page 117
6.5.4.1 Simple Type Names......Page 119
6.5.4.2 Qualified Type Names......Page 120
6.5.5.1 Simple Expression Names......Page 121
6.5.5.2 Qualified Expression Names......Page 122
6.5.6.2 Qualified Method Names......Page 124
6.6.1 Determining Accessibility......Page 125
6.6.3 An Example of Access Control......Page 126
6.6.4 Example: Access to public and Non-public Cla.........Page 127
6.6.5 Example: Default-Access Fields, Methods, and.........Page 128
6.6.6 Example: public Fields, Methods, and Constru.........Page 129
6.6.7 Example: protected Fields, Methods, and Cons.........Page 130
6.7 Fully Qualified Names......Page 131
6.8 Naming Conventions......Page 132
6.8.1 Package Names......Page 133
6.8.3 Method Names......Page 134
6.8.5 Constant Names......Page 135
6.8.6 Local Variable and Parameter Names......Page 136
Packages......Page 139
7.1 Package Members......Page 140
7.2.1 Storing Packages in a File System......Page 141
7.3 Compilation Units......Page 143
7.4.1 Named Packages......Page 144
7.4.2 Unnamed Packages......Page 145
7.5 Import Declarations......Page 146
7.5.1 Single-Type-Import Declaration......Page 147
7.5.3 Automatic Imports......Page 148
7.5.4 A Strange Example......Page 149
7.6 Type Declarations......Page 150
7.7 Unique Package Names......Page 151
Classes......Page 153
8.1 Class Declaration......Page 154
8.1.2 Class Modifiers......Page 156
8.1.2.1 abstract Classes......Page 157
8.1.3 Superclasses and Subclasses......Page 159
8.1.4 Superinterfaces......Page 161
8.2 Class Members......Page 164
8.2.1.1 Example: Inheritance with Default Access......Page 165
8.2.1.2 Inheritance with public and protected......Page 166
8.2.1.3 Inheritance with private......Page 167
8.2.1.4 Accessing Members of Inaccessible Classes......Page 168
8.3 Field Declarations......Page 169
8.3.1 Field Modifiers......Page 170
8.3.1.1 static Fields......Page 171
8.3.1.3 transient Fields......Page 172
8.3.1.4 volatile Fields......Page 173
8.3.2 Initialization of Fields......Page 174
8.3.2.1 Initializers for Class Variables......Page 175
8.3.3 Examples of Field Declarations......Page 176
8.3.3.2 Example: Hiding of Instance Variables......Page 177
8.3.3.3 Example: Multiply Inherited Fields......Page 179
8.3.3.4 Example: Re-inheritance of Fields......Page 180
8.4 Method Declarations......Page 181
8.4.1 Formal Parameters......Page 182
8.4.3.1 abstract Methods......Page 183
8.4.3.2 static Methods......Page 185
8.4.3.3 final Methods......Page 186
8.4.3.5 synchronized Methods......Page 187
8.4.4 Method Throws......Page 189
8.4.5 Method Body......Page 190
8.4.6.2 Hiding (By Class Methods)......Page 191
8.4.6.4 Inheriting Methods with the Same Signature.........Page 192
8.4.8 Examples of Method Declarations......Page 193
8.4.8.2 Example: Overloading, Overriding, and Hidi.........Page 194
8.4.8.4 Example: Overriding versus Hiding......Page 195
8.4.8.5 Example: Invocation of Hidden Class Method.........Page 197
8.4.8.6 Large Example of Overriding......Page 198
8.4.8.7 Example: Incorrect Overriding because of T.........Page 200
8.5 Static Initializers......Page 201
8.6 Constructor Declarations......Page 202
8.6.3 Constructor Modifiers......Page 203
8.6.5 Constructor Body......Page 204
8.6.6 Constructor Overloading......Page 205
8.6.8 Preventing Instantiation of a Class......Page 206
Interfaces......Page 209
9.1.2.1 abstract Interfaces......Page 210
9.1.4 Interface Body and Member Declarations......Page 211
9.3 Field (Constant) Declarations......Page 212
9.3.1 Initialization of Fields in Interfaces......Page 213
9.3.2.2 Multiply Inherited Fields......Page 214
9.4.1 Inheritance and Overriding......Page 215
9.4.3.1 Example: Overriding......Page 216
9.4.3.2 Example: Overloading......Page 217
Arrays......Page 219
10.2 Array Variables......Page 220
10.4 Array Access......Page 221
10.6 Arrays Initializers......Page 222
10.7 Array Members......Page 223
10.10 Array Store Exception......Page 225
Exceptions......Page 227
11.1 The Causes of Exceptions......Page 228
11.2.2 Why Runtime Exceptions are Not Checked......Page 229
11.3 Handling of an Exception......Page 230
11.3.2 Handling Asynchronous Exceptions......Page 231
11.4 An Example of Exceptions......Page 232
11.5.1.1 Standard Runtime Exceptions......Page 234
11.5.1.2 Standard Checked Exceptions......Page 236
11.5.2.1 Loading and Linkage Errors......Page 237
11.5.2.2 Virtual Machine Errors......Page 238
12.1 Virtual Machine Start-Up......Page 241
12.1.2 Link Test: Verify, Prepare, (Optionally) Re.........Page 242
12.1.3 Initialize Test: Execute Initializers......Page 243
12.2 Loading of Classes and Interfaces......Page 244
12.2.2 Loading: Implications for Code Generation......Page 245
12.3.1 Verification of the Binary Representation......Page 246
12.3.3 Resolution of Symbolic References......Page 247
12.3.4 Linking: Implications for Code Generation......Page 248
12.4.1 When Initialization Occurs......Page 249
12.4.2 Detailed Initialization Procedure......Page 251
12.4.3 Initialization: Implications for Code Gener.........Page 253
12.5 Creation of New Class Instances......Page 254
12.6 Finalization of Class Instances......Page 257
12.6.1 Implementing Finalization......Page 258
12.6.2 Finalizer Invocations are Not Ordered......Page 260
12.9 Virtual Machine Exit......Page 261
Binary Compatibility......Page 263
13.1 The Form of a Java Binary......Page 264
13.2 What Binary Compatibility Is and Is Not......Page 266
13.3 Evolution of Packages......Page 267
13.4.3 public Classes......Page 268
13.4.4 Superclasses and Superinterfaces......Page 269
13.4.5 Class Body and Member Declarations......Page 271
13.4.6 Access to Members and Constructors......Page 274
13.4.7 Field Declarations......Page 275
13.4.8 final Fields and Constants......Page 276
13.4.12 Method and Constructor Declarations......Page 279
13.4.15 abstract Methods......Page 280
13.4.16 final Methods......Page 281
13.4.21 Method and Constructor Body......Page 282
13.4.22 Method and Constructor Overloading......Page 283
13.4.23 Method Overriding......Page 284
13.5.1 public Interfaces......Page 285
13.5.4 Field Declarations......Page 286
13.5.5 Abstract Method Declarations......Page 287
Blocks and Statements......Page 289
14.1 Normal and Abrupt Completion of Statements......Page 290
14.3 Local Variable Declaration Statements......Page 291
14.3.1 Local Variable Declarators and Types......Page 292
14.3.2 Scope of Local Variable Declarations......Page 293
14.3.3 Hiding of Names by Local Variables......Page 294
14.4 Statements......Page 295
14.6 Labeled Statements......Page 297
14.7 Expression Statements......Page 298
14.8.2 The if–then–else Statement......Page 299
14.9 The switch Statement......Page 300
14.10 The while Statement......Page 303
14.11 The do Statement......Page 304
14.11.1 Abrupt Completion......Page 305
14.12 The for Statement......Page 306
14.12.2 Iteration of for statement......Page 307
14.12.3 Abrupt Completion of for statement......Page 308
14.13 The break Statement......Page 309
14.14 The continue Statement......Page 311
14.15 The return Statement......Page 312
14.16 The throw Statement......Page 313
14.17 The synchronized Statement......Page 315
14.18 The try statement......Page 316
14.18.1 Execution of try–catch......Page 317
14.18.2 Execution of try–catch–finally......Page 318
14.19 Unreachable Statements......Page 321
15.1 Evaluation, Denotation, and Result......Page 327
15.4 Expressions and Run-Time Checks......Page 328
15.5 Normal and Abrupt Completion of Evaluation......Page 330
15.6.1 Evaluate Left-Hand Operand First......Page 331
15.6.2 Evaluate Operands before Operation......Page 333
15.6.3 Evaluation Respects Parentheses and Precede.........Page 334
15.6.4 Argument Lists are Evaluated Left-to-Right......Page 335
15.6.5 Evaluation Order for Other Expressions......Page 336
15.7 Primary Expressions......Page 337
15.7.1 Literals......Page 338
15.7.3 Parenthesized Expressions......Page 339
15.8.1 Run-time Evaluation of Class Instance Creat.........Page 340
15.9 Array Creation Expressions......Page 341
15.9.1 Run-time Evaluation of Array Creation Expre.........Page 342
15.9.2 Example: Array Creation Evaluation Order......Page 344
15.10 Field Access Expressions......Page 345
15.10.1 Field Access Using a Primary......Page 346
15.10.2 Accessing Superclass Members using super......Page 348
15.11 Method Invocation Expressions......Page 349
15.11.1 Compile-Time Step 1: Determine Class or In.........Page 350
15.11.2.1 Find Methods that are Applicable and Acc.........Page 351
15.11.2.3 Example: Overloading Ambiguity......Page 353
15.11.2.4 Example: Return Type Not Considered......Page 354
15.11.2.5 Example: Compile-Time Resolution......Page 355
15.11.3 Compile-Time Step 3: Is the Chosen Method .........Page 358
15.11.4.1 Compute Target Reference (If Necessary)......Page 359
15.11.4.3 Check Accessibility of Type and Method......Page 360
15.11.4.4 Locate Method to Invoke......Page 361
15.11.4.5 Create Frame, Synchronize, Transfer Cont.........Page 362
15.11.4.8 Example: Evaluation Order......Page 363
15.11.4.9 Example: Overriding......Page 364
15.11.4.10 Example: Method Invocation using super......Page 366
15.12.1 Runtime Evaluation of Array Access......Page 367
15.12.2 Examples: Array Access Evaluation Order......Page 368
15.13.1 Names......Page 370
15.13.3 Postfix Decrement Operator --......Page 371
15.14 Unary Operators......Page 372
15.14.1 Prefix Increment Operator ++......Page 373
15.14.3 Unary Plus Operator +......Page 374
15.14.6 Logical Complement Operator !......Page 375
15.15 Cast Expressions......Page 376
15.16.1 Multiplication Operator *......Page 377
15.16.2 Division Operator /......Page 378
15.16.3 Remainder Operator %......Page 379
15.17.1.1 String Conversion......Page 381
15.17.1.3 Examples of String Concatenation......Page 382
15.17.2 Additive Operators (+ and -) for Numeric T.........Page 384
15.18 Shift Operators......Page 385
15.19 Relational Operators......Page 386
15.19.2 Type Comparison Operator instanceof......Page 387
15.20 Equality Operators......Page 388
15.20.1 Numerical Equality Operators ==and !=......Page 389
15.20.3 Reference Equality Operators ==and !=......Page 390
15.21.2 Boolean Logical Operators &, ^, and |......Page 391
15.23 Conditional-Or Operator ||......Page 392
15.24 Conditional Operator ?:......Page 393
15.25.1 Simple Assignment Operator =......Page 395
15.25.2 Compound Assignment Operators......Page 400
15.27 Constant Expression......Page 407
Definite Assignment......Page 409
16.1.4 The Boolean Operator ||......Page 412
16.1.7 The Boolean Operator |......Page 413
16.1.9 The Boolean Operator ==......Page 414
16.1.11 The Boolean Operator ?:......Page 415
16.1.13 Boolean Assignment Expressions......Page 416
16.1.16 Other Expressions......Page 417
16.2.2 Blocks......Page 418
16.2.6 if Statements......Page 419
16.2.8 while Statements......Page 420
16.2.10.1 Initialization Part......Page 421
16.2.11 break, continue, return, and throw Statem.........Page 422
16.2.13 try Statements......Page 423
Threads and Locks......Page 425
17.1 Terminology and Framework......Page 427
17.2 Execution Order......Page 429
17.3 Rules about Variables......Page 430
17.4 Nonatomic Treatment of double and long......Page 431
17.5 Rules about Locks......Page 432
17.7 Rules for Volatile Variables......Page 433
17.9 Discussion......Page 434
17.10 Example: Possible Swap......Page 435
17.11 Example: Out-of-Order Writes......Page 439
17.13 Locks and Synchronization......Page 441
17.14 Wait Sets and Notification......Page 442
18.1 The Text of a Documentation Comment......Page 445
18.4 Tagged Paragraphs......Page 446
18.4.2 The @author Tag......Page 447
18.4.6 The @exception Tag......Page 448
18.5 Example......Page 449
19.1.1 Problem #1: Names Too Specific......Page 459
19.1.2 Problem #2: Modifiers Too Specific......Page 461
19.1.3 Problem #3: Field Declaration versus Method.........Page 462
19.1.4 Problem #4: Array Type versus Array Access......Page 463
19.1.5 Problem #5: Cast versus Parenthesized Expre.........Page 464
19.2 Productions from Β§2.3: The Syntactic Grammar......Page 465
19.4 Productions from Β§4: Types, Values, and Varia.........Page 466
19.6 Productions from Β§7: Packages......Page 467
19.8.1 Productions from Β§8.1: Class Declaration......Page 468
19.8.3 Productions from Β§8.4: Method Declarations......Page 469
19.8.5 Productions from Β§8.6: Constructor Declarat.........Page 470
19.11 Productions from Β§14: Blocks and Statements......Page 471
19.12 Productions from Β§15: Expressions......Page 475
The Package java.lang......Page 481
20.1.2 public String toString()......Page 484
20.1.4 public int hashCode()......Page 485
20.1.5 protected Object clone() throws CloneNotSup.........Page 486
20.1.7 public final void wait(long millis) throws .........Page 487
20.1.8 public final void wait(long millis, int nan.........Page 488
20.1.11 protected void finalize() throws Throwable.........Page 489
20.2The Interface java.lang.Cloneable......Page 491
20.3.2 public String getName()......Page 492
20.3.5 public Class[] getInterfaces()......Page 493
20.3.8 public static Class forName(String classNam.........Page 494
20.4.4 public Boolean(String s)......Page 495
20.4.10 public static boolean getBoolean(String na.........Page 496
20.5The Class java.lang.Character......Page 497
20.5.7 public boolean equals(Object obj)......Page 499
20.5.10 public static boolean isDefined(char ch)......Page 500
20.5.11 public static boolean isLowerCase(char ch).........Page 502
20.5.12 public static boolean isUpperCase(char ch).........Page 503
20.5.14 public static boolean isDigit(char ch)......Page 504
20.5.15 public static boolean isLetter(char ch)......Page 505
20.5.16 public static boolean isLetterOrDigit(char.........Page 506
20.5.20 public static char toLowerCase(char ch)......Page 508
20.5.21 public static char toUpperCase(char ch)......Page 510
20.5.23 public static int digit(char ch, int radix.........Page 511
20.5.24 public static char forDigit(int digit, int.........Page 512
20.6.4 public abstract double doubleValue()......Page 513
20.7.2 public static final int MAX_VALUE = 0x7ffff.........Page 514
20.7.9 public long longValue()......Page 515
20.7.13 public static String toString(int i, int r.........Page 516
20.7.16 public static String toBinaryString(int i).........Page 517
20.7.18 public static int parseInt(String s, int r.........Page 518
20.7.22 public static Integer getInteger(String nm.........Page 519
20.7.23 public static Integer getInteger(String nm.........Page 520
20.8.2 public static final long MAX_VALUE = 0x7fff.........Page 521
20.8.8 public int intValue()......Page 522
20.8.13 public static String toString(long i, int .........Page 523
20.8.15 public static String toOctalString(long i).........Page 524
20.8.18 public static long parseLong(String s, int.........Page 525
20.8.20 public static Long valueOf(String s, int r.........Page 526
20.8.23 public static Long getLong(String nm, Long.........Page 527
20.9.2 public static final float MAX_VALUE = 3.402.........Page 529
20.9.9 public String toString()......Page 530
20.9.14 public float floatValue()......Page 531
20.9.16 public static String toString(float f)......Page 532
20.9.19 public static boolean isNaN(float v)......Page 533
20.9.23 public static float intBitsToFloat(int bit.........Page 534
20.10.2 public static final double MAX_VALUE = .........Page 536
20.10.8 public String toString()......Page 537
20.10.12 public long longValue()......Page 538
20.10.15 public static String toString(double d)......Page 539
20.10.17 public boolean isNaN()......Page 540
20.10.21 public static long doubleToLongBits(doubl.........Page 541
20.10.22 public static double longBitsToDouble(lon.........Page 542
20.11The Class java.lang.Math......Page 543
20.11.3 public static double sin(double a)......Page 544
20.11.7 public static double acos(double a)......Page 545
20.11.9 public static double atan2(double y, doubl.........Page 546
20.11.12 public static double sqrt(double a)......Page 547
20.11.13 public static double pow(double a, double.........Page 548
20.11.16 public static double floor(double a)......Page 550
20.11.19 public static long round(double a)......Page 551
20.11.22 public static long abs(long a)......Page 552
20.11.24 public static double abs(double a)......Page 553
20.11.27 public static float min(float a, float b).........Page 554
20.11.31 public static float max(float a, float b).........Page 555
20.11.32 public static double max(double a, double.........Page 556
20.12The Class java.lang.String......Page 557
20.12.5 public String(char[] data, int offset, int.........Page 559
20.12.8 public String toString()......Page 560
20.12.11 public int length()......Page 561
20.12.14 public void getBytes(int srcBegin, int sr.........Page 562
20.12.16 public boolean equalsIgnoreCase(String an.........Page 563
20.12.18 public boolean regionMatches(int toffset,.........Page 564
20.12.19 public boolean regionMatches(boolean igno.........Page 565
20.12.23 public int indexOf(int ch)......Page 566
20.12.26 public int indexOf(String str, int fromIn.........Page 567
20.12.30 public int lastIndexOf(String str, int fr.........Page 568
20.12.32 public String substring(int beginIndex, i.........Page 569
20.12.35 public String toLowerCase()......Page 570
20.12.38 public static String valueOf(Object obj)......Page 571
20.12.43 public static String valueOf(int i)......Page 572
20.12.47 public String intern()......Page 573
20.13The Class java.lang.StringBuffer......Page 574
20.13.5 public int length()......Page 576
20.13.9 public char charAt(int index) throws Index.........Page 577
20.13.13 public StringBuffer append(String str)......Page 578
20.13.15 public StringBuffer append(char[] str, .........Page 579
20.13.21 public StringBuffer append(double d)......Page 580
20.13.24 public StringBuffer insert(int offset, ch.........Page 581
20.13.28 public StringBuffer insert(int offset, lo.........Page 582
20.13.31 public StringBuffer reverse()......Page 583
20.14.1 protected ClassLoader() throws SecurityExc.........Page 584
20.14.3 protected final Class defineClass(byte dat.........Page 585
20.14.5 protected final Class findSystemClass(Stri.........Page 586
20.15.3 public abstract InputStream getErrorStream.........Page 587
20.15.6 public abstract void destroy()......Page 588
20.16.2 public void exit(int status) throws Securi.........Page 589
20.16.4 public Process exec(String command, String.........Page 590
20.16.8 public long freeMemory()......Page 591
20.16.12 public void traceMethodCalls(boolean on)......Page 592
20.16.15 public InputStream getLocalizedInputStrea.........Page 593
20.16.16 public OutputStream getLocalizedOutputStr.........Page 594
20.17The Class java.lang.SecurityManager......Page 595
20.17.1 protected boolean inCheck = false;......Page 596
20.17.6 protected ClassLoader currentClassLoader().........Page 597
20.17.11 public void checkAccess(Thread t) throws .........Page 598
20.17.14 public void checkExec(String cmd) throws .........Page 599
20.17.17 public void checkLink(String libname) thr.........Page 600
20.17.20 public void checkWrite(int fd) throws Sec.........Page 601
20.17.23 public void checkConnect(String host, int.........Page 602
20.17.26 public void checkSetFactory() throws Secu.........Page 603
20.17.29 public void checkPackageDefinition(String.........Page 604
20.18.1 public static InputStream in;......Page 605
20.18.5 public static void setSecurityManager(Secu.........Page 606
20.18.7 public static Properties getProperties() t.........Page 607
20.18.11 public static void exit(int status) throw.........Page 608
20.18.14 public static void load(String filename) .........Page 609
20.18.16 public static void arraycopy(Object src, .........Page 610
20.19.1 public abstract void run()......Page 612
20.20The Class java.lang.Thread......Page 613
20.20.4 public Thread()......Page 617
20.20.8 public Thread(ThreadGroup group, String na.........Page 618
20.20.10 public Thread(ThreadGroup group, Runnable.........Page 619
20.20.14 public void start() throws IllegalThreadS.........Page 620
20.20.16 public final void stop(Throwable thr) thr.........Page 621
20.20.20 public final void setName(String name) th.........Page 622
20.20.25 public final void setDaemon(boolean on) t.........Page 623
20.20.30 public final void join(long millis, int n.........Page 624
20.20.35 public static int activeCount()......Page 625
20.20.39 public static void sleep(long millis) thr.........Page 626
20.20.41 public void destroy() throws SecurityExce.........Page 627
20.21The Class java.lang.ThreadGroup......Page 628
20.21.1 public ThreadGroup(String name) throws Sec.........Page 629
20.21.3 public String toString()......Page 630
20.21.8 public final void stop() throws SecurityEx.........Page 631
20.21.12 public final int getMaxPriority()......Page 632
20.21.17 public int allThreadsCount()......Page 633
20.21.24 public int activeCount()......Page 634
20.21.30 public void list()......Page 635
20.21.31 public void uncaughtException(Thread t, T.........Page 636
20.22The Class java.lang.Throwable and its Subcl.........Page 637
20.22.4 public String toString()......Page 638
20.22.6 public void printStackTrace()......Page 639
20.23.4 public Throwable getException(Throwable th.........Page 640
The Package java.util......Page 641
21.1.2 public Object nextElement() throws NoSuchEl.........Page 643
21.2.2 public BitSet(int nbits)......Page 644
21.2.5 public int hashCode()......Page 645
21.2.9 public void clear(int bitIndex)......Page 646
21.2.13 public int size()......Page 647
21.3The Class java.util.Date......Page 648
21.3.3 public Date(int year, int month, int date)......Page 650
21.3.7 public String toString()......Page 651
21.3.11 public void setYear(int year)......Page 652
21.3.16 public int getDay()......Page 653
21.3.22 public void setSeconds(int seconds)......Page 654
21.3.28 public String toGMTString()......Page 655
21.3.30 public static long UTC(int year, int month.........Page 656
21.3.31 public static long parse(String s) throws .........Page 657
21.4.3 abstract public Object get(Object key) thro.........Page 659
21.4.7 abstract public Enumeration elements()......Page 660
21.5The Class java.util.Hashtable......Page 661
21.5.7 public boolean isEmpty()......Page 662
21.5.15 protected void rehash()......Page 663
21.5.16 public void clear()......Page 664
21.6.3 public Properties(Properties defaults)......Page 665
21.6.7 public void load(InputStream in) throws IOE.........Page 666
21.6.8 public void save(OutputStream out, String h.........Page 667
21.6.9 public void list(PrintStream out)......Page 668
21.7.4 public int countObservers()......Page 669
21.7.9 public boolean hasChanged()......Page 670
21.8.1 public void update(Observable o, Object arg.........Page 671
21.9.1 protected long seed;......Page 672
21.9.6 public void setSeed(long seed)......Page 673
21.9.9 public long nextLong()......Page 674
21.9.11 public double nextDouble()......Page 675
21.9.12 public double nextGaussian()......Page 676
21.10The Class java.util.StringTokenizer......Page 677
21.10.6 public String nextToken(String delim)......Page 678
21.10.9 public int countTokens()......Page 679
21.11The Class java.util.Vector......Page 680
21.11.6 public Vector()......Page 681
21.11.10 public final void setElementAt(Object obj.........Page 682
21.11.16 public final void removeElementAt(int ind.........Page 683
21.11.23 public final void trimToSize()......Page 684
21.11.28 public final int indexOf(Object elem, int.........Page 685
21.11.30 public final int lastIndexOf(Object elem,.........Page 686
21.12.3 public Object peek() throws EmptyStackExce.........Page 687
21.12.5 public int search(Object o)......Page 688
21.13.1 public EmptyStackException()......Page 689
21.14.2 public NoSuchElementException(String s)......Page 690
The Package java.io......Page 691
22.1The Interface java.io.DataInput......Page 693
22.1.2 public void readFully(byte[] b, int off, in.........Page 694
22.1.6 public int readUnsignedByte() throws IOExce.........Page 695
22.1.10 public int readInt() throws IOException......Page 696
22.1.13 public double readDouble() throws IOExcept.........Page 697
22.1.15 public String readUTF() throws IOException.........Page 698
22.2.1 public void write(int b) throws IOException.........Page 700
22.2.5 public void writeByte(int v) throws IOExcep.........Page 701
22.2.9 public void writeLong(long v) throws IOExce.........Page 702
22.2.12 public void writeBytes(String s) throws IO.........Page 703
22.2.14 public void writeUTF(String s) throws IOEx.........Page 704
22.3.2 public int read(byte[] b) throws IOExceptio.........Page 706
22.3.3 public int read(byte[] b, int off, int len).........Page 707
22.3.7 public void mark(int readlimit)......Page 708
22.3.9 public boolean markSupported()......Page 709
22.4.2 public FileInputStream(File file) throws Se.........Page 710
22.4.7 public int read(byte[] b, int off, int len).........Page 711
22.4.11 protected void finalize() throws IOExcepti.........Page 712
22.5.3 public void connect(PipedOutputStream src) .........Page 713
22.5.6 public void close() throws IOException......Page 714
22.6.3 protected int count;......Page 715
22.6.7 public int read(byte[] b, int off, int len).........Page 716
22.6.10 public void reset()......Page 717
22.7.3 protected int count;......Page 718
22.7.9 public void reset()......Page 719
22.8.3 public int read() throws IOException......Page 720
22.8.5 public void close() throws IOException......Page 721
22.9.3 public int read() throws IOException......Page 722
22.9.9 public void mark(int readlimit)......Page 723
22.9.11 public boolean markSupported()......Page 724
22.10.2 protected int count = 0;......Page 725
22.10.8 public int read() throws IOException......Page 726
22.10.14 public void reset() throws IOException......Page 727
22.10.15 public boolean markSupported()......Page 728
22.11.2 public final void readFully(byte[] b) thro.........Page 729
22.11.9 public final int readUnsignedShort() throw.........Page 730
22.11.16 public final String readUTF() throws IOEx.........Page 731
22.11.17 public final static String readUTF(DataIn.........Page 732
22.12.2 public int read() throws IOException......Page 733
22.12.6 public int available() throws IOException......Page 734
22.12.10 public void setLineNumber(int lineNumber).........Page 735
22.13.3 public int read() throws IOException......Page 736
22.13.7 public boolean markSupported()......Page 737
22.14The Class java.io.StreamTokenizer......Page 738
22.14.5 public int ttype;......Page 740
22.14.9 public void resetSyntax()......Page 741
22.14.16 public void parseNumbers()......Page 742
22.14.21 public int nextToken() throws IOException.........Page 743
22.14.22 public void pushBack()......Page 744
22.14.24 public String toString()......Page 745
22.15.3 public void write(byte[] b, int off, int l.........Page 746
22.15.5 public void close() throws IOException......Page 747
22.16.2 public FileOutputStream(File file) throws .........Page 748
22.16.8 public void close() throws IOException......Page 749
22.16.9 protected void finalize() throws IOExcepti.........Page 750
22.17.3 public void connect(PipedInputStream snk) .........Page 751
22.17.6 public void close() throws IOException......Page 752
22.18.3 public ByteArrayOutputStream()......Page 753
22.18.9 public byte[] toByteArray()......Page 754
22.18.12 public void writeTo(OutputStream out) thr.........Page 755
22.19.4 public void write(byte[] b) throws IOExcep.........Page 756
22.19.7 public void close() throws IOException......Page 757
22.20.3 public BufferedOutputStream(OutputStream o.........Page 758
22.20.8 public void flush() throws IOException......Page 759
22.21.2 public DataOutputStream(OutputStream out)......Page 760
22.21.8 public final void writeShort(int v) throws.........Page 761
22.21.14 public final void writeBytes(String s) th.........Page 762
22.21.17 public final int size()......Page 763
22.22The Class java.io.PrintStream......Page 764
22.22.7 public boolean checkError()......Page 765
22.22.12 public void print(char c)......Page 766
22.22.19 public void println(String s)......Page 767
22.22.26 public void println(double d)......Page 768
22.23The Class java.io.RandomAccessFile......Page 769
22.23.1 public RandomAccessFile(String path, Strin.........Page 770
22.23.5 public void seek(long pos) throws IOExcept.........Page 771
22.23.11 public final void readFully(byte[] b) thr.........Page 772
22.23.16 public final int readUnsignedByte() throw.........Page 773
22.23.22 public final float readFloat() throws IOE.........Page 774
22.23.28 public void write(byte[] b, int off, int .........Page 775
22.23.34 public final void writeLong(long v) throw.........Page 776
22.23.39 public final void writeUTF(String str) th.........Page 777
22.24The Class java.io.File......Page 778
22.24.5 public File(String path) throws NullPointe.........Page 779
22.24.10 public int hashCode()......Page 780
22.24.17 public boolean canRead() throws SecurityE.........Page 781
22.24.20 public boolean isDirectory() throws Secur.........Page 782
22.24.25 public String[] list() throws SecurityExc.........Page 783
22.24.28 public boolean delete() throws SecurityEx.........Page 784
22.25.1 public boolean accept(File dir, String nam.........Page 785
22.26.4 public boolean valid()......Page 786
22.27.2 public IOException(String s)......Page 787
22.28.2 public EOFException(String s)......Page 788
22.29.2 public FileNotFoundException(String s)......Page 789
22.30.3 public InterruptedIOException(String s)......Page 790
22.31.2 public UTFDataFormatException(String s)......Page 791
Index......Page 793
Credits......Page 849
Colophon......Page 851


πŸ“œ SIMILAR VOLUMES


The Java language specification (TM) Lan
✍ James Gosling, Bill Joy, Guy Steele, Gilad Bracha πŸ“‚ Library πŸ“… 2000 πŸ› Addison-Wesley 🌐 English

Written by the inventors of the technology, The Java(tm) Language Specification, Second Edition is the definitive technical reference for the Java(tm) programming language. If you want to know the precise meaning of the language's constructs, this is the source for you. The book provides complete,

The Java Language Specification, Java SE
✍ Gosling, James,Joy, Bill,Steele, Guy L.,Bracha, Gilad.,Buckley, Alex.;Bill Joy;G πŸ“‚ Library πŸ“… 2014 πŸ› Pearson Education Limited (US titles) 🌐 English
The Java Language Specification
✍ Steele, Guy L.;Joy, Bill;Bracha, Gilad;Gosling, James πŸ“‚ Library πŸ“… 2005 πŸ› Pearson Education [distributor, Prentice Hall [Imp 🌐 English

Annotation

Java(TM) Programming Language
✍ Ken Arnold, James Gosling, David Holmes πŸ“‚ Library πŸ“… 2000 πŸ› Prentice Hall PTR 🌐 English

Direct from the creators of the Java(tm) programming language, this Third Edition of The Java(tm) Programming Language is a valuable resource for both novice and advanced programmers. More than 100,000 developers who programmed with C, C++, Smalltalk, or other high-level languages have used this boo

The Java Language Specification, Java SE
✍ Gosling J., Joy B., Steele G., Bracha G., Buckley A. πŸ“‚ Library 🌐 English

This is the definitive technical reference for the Java programming language. Written by the inventors of Java, this book provides complete, accurate, and detailed coverage of the Java programming language. It fully describes all new features of Java SE 8, including lambda expressions, method refere