- (minus sign)
printf flag, 84
_ (underscore)
delimiter, in number literals, 48
in instance field names (C++), 176
, (comma)
operator (C++), 65
; (semicolon)
in class path (Windows), 191
: (colon)
in assertions, 385
in class path (UNIX), 191
inheritance token (C++), 204
:: operator (C++), 153, 161, 207, 320
/ (slash)
in file names, 785
// comments, 46
/* . . . */ comments, 46
/** . . . */ comments, 46, 194
. (period)
in directory names (UNIX), 788
... (ellipsis), in varargs, 257
', " (single, double quote), escape sequences for, 50
". . ." (double quotes), for strings, 45
( (left parenthesis), printf flag, 83–84
() (empty parentheses), in method calls, 46
(. . .) (parentheses)
[] (empty square brackets), in generics, 421
[. . .] (square brackets), for arrays, 111, 115
{. . .} (curly braces)
for enumerated type, 65
in lambda expressions, 316
{{. . .}} (double curly braces), in inner classes, 344
@ (at), in javadoc comments, 194, 196
$ (dollar sign)
delimiter, for inner classes, 336
in variable names, 53
printf flag, 84
* (asterisk)
echo character, 652
in class path, 191
in imports, 183
\ (backslash)
escape sequence for, 50
& (ampersand)
in bounding types, 423
in reference parameters (C++), 169
# (number sign)
in javadoc hyperlinks, 197
in property files, 599
printf flag, 84
% (percent sign)
formatting output for, 83
printf flag, 84
+ (plus sign)
arithmetic operator, 56, 60, 64
for objects and strings, 66–67, 239
printf flag, 84
in shell syntax, 88
<? (in wildcard types), 443
<. . .> (angle brackets), for type parameters, 245, 419
> (right angle bracket)
-> (in lambda expressions), 315–317
>& (in shell syntax), 411
for class objects, 262
for enumerated types, 258
for floating-point numbers, 101
for identity hash maps, 507
for strings, 69
for wrappers, 254
0, 0b, 0x prefixes (in integers), 48
0, printf flag, 84
2> (in shell syntax), 411
Absolute positioning (Swing), 723
extending, 223
interfaces and, 297
object variables of, 223
Abstract methods, 222
in functional interfaces, 318
AbstractAction class, 609, 612, 680, 683
AbstractButton class, 627, 681–684
is/setSelected methods, 684
setAction method, 681
setActionCommand method, 663
setDisplayedMnemonicIndex method, 686, 688
setHorizontalTextPosition method, 682–683
setMnemonic method, 688
abstractClasses/Employee.java, 226
abstractClasses/Person.java, 226
abstractClasses/PersonTest.java, 225
abstractClasses/Student.java, 227
AbstractCollection class, 467, 479
AbstractQueue class, 463
Accelerators (in menus), 687–688
accept method (FileFilter), 755, 764
acceptEither method (CompletableFuture), 934
Access modifiers
checking, 265
final, 55, 157, 217–218, 295, 339–342, 886
public, 42–43, 56, 147–150, 189–190, 289–290
public static final, 296
static final, 55
Access order, 505
AccessibleObject class
isAccessible method, 275
setAccessible method, 272, 275
Accessor methods, 141–145, 153–154, 444
Accessory components, 757
accumulate method (LongAccumulator), 888
accumulateAndGet method (AtomicType), 887
Action interface, 607–615, 680
actionPerformed method, 608
add/removePropertyChangeListener methods, 608–609
get/putValue methods, 608, 615
is/setEnabled methods, 608, 615
predefined action table names, 609
action/ActionFrame.java, 613
ActionEvent class, 588, 626–627
getActionCommand method, 598, 627
getModifiers method, 627
ActionListener interface, 626
actionPerformed method, 302–303, 314, 331–332, 337, 342, 589–593, 597, 601, 607, 609, 627, 897
overriding, 680
ActionMap class, 612
associating with keystrokes, 610
asynchronous, 931
names of, 612
predefined, 609
add method
of BigDecimal, BigInteger, 110–111
of ButtonGroup, 663
of GregorianCalendar, 142
of HashSet, 487
of ListIterator, 470, 476–478, 483
of LongAdder, 888
of Queue, 494
of Set, 471
addAll method
of ArrayList, 417
of Collections, 523
of List, 482
addChoosableFileFilter method (JFileChooser), 763
addComponent, addGroup methods (GroupLayout), 723
addFirst/Last methods
of Deque, 494
of LinkedList, 484
addHandler method (Logger), 406
addItem method (JComboBox), 669–671
for different numeric types, 60
for objects and strings, 66–67, 239
addLayoutComponent method (LayoutManager), 728
addPropertyChangeListener method (Action), 608–609
addSeparator method
addShutdownHook method (Runtime), 182
addSuppressed method (Throwable), 377, 380
AdjustmentEvent class, 626
methods of, 627
AdjustmentListener interface, 626
adjustmentValueChanged method, 627
Adobe Flash, 9
Algorithms, 130
for shuffling, 520
simple, in the standard library, 522–524
Algorithms + Data Structures = Programs
(Wirth), 130
Algorithms in C++ (Sedgewick), 519
Alice in Wonderland (Carroll), 487, 490
allOf method (EnumSet), 508, 934
Alt+F4, in Windows, 688
and, andNot methods (BitSet), 533
Andreessen, Mark, 10
Annotations, 430
Anonymous arrays, 114
Anonymous inner classes, 329, 342–345
anonymousInnerClass/AnonymousInnerClassTest.java, 344
Antisymmetry rule, 295
anyOf method (CompletableFuture), 934
append method
appendCodePoint method (StringBuilder), 78
Applet class, 803
destroy method, 808
getAppletContext method, 818–820
getAppletInfo method, 816
getCodeBase, getDocumentBase methods, 816–817
getImage, getAudioClip methods, 817
getParameter method, 810–811, 816
getParameterInfo method, 816
play method, 817
resize method, 808
start, stop methods, 808
applet element (HTML), 34, 805, 808–810
align attribute, 808
alt attribute, 809
archive attribute, 809
code attribute, 809
codebase attribute, 809
height, width attributes, 807–808
hspace, vspace attributes, 808
name attribute, 810
object attribute (obsolete), 809
applet/NotHelloWorld.java, 805
AppletContext interface, 818
getApplet, getApplets methods, 818, 820
accessing from JavaScript, 810
aligning, 808
changing warning string in, 190
communicating to each other, 810, 818
context of, 818
debugging, 807
executing, 805
image and audio files in, 816–817
multiple copies of, 813
no title bars for, 807
passing information to, 816
printing in, 832
running in a browser, 8, 33–39, 802–803, 818–820
serialized objects of, 809
appletviewer program, 33, 805–806
Application Programming Interfaces (APIs), online documentation, 71, 74–77
cache of, 827
closing by user, 545
codebase of, 831
compiling/running from the command line, 30–33
extensible, 217
launching, 43
localization of, 136, 393–394, 785
monitoring and managing in JVM, 412
platform-independent, 724
terminating, 45
applyToEither method (CompletableFuture), 934
Arguments. See Parameters
accuracy of, 56
autoboxing with, 253
combining with assignment, 61
precedence of, 64
get, getXxx, set, setXxx methods, 279
anonymous, 344
capacity of, 246
elements of:
removing, 249
traversing, 249
Array variables, 111
ArrayBlockingQueue class, 899, 903
ArrayDeque class, 462, 494–495
as a concrete collection type, 472
ArrayIndexOutOfBoundsException, 112, 361–363, 938
ArrayList class, 113, 244–252, 416–418, 474
addAll method, 417
as a concrete collection type, 472
ensureCapacity method, 246–247
removeIf method, 319
synchronized, 914
toArray method, 435
arrayList/ArrayListTest.java, 250
anonymous, 114
cloning, 311
converting to collections, 525–526
on write, 912
creating, 111
elements of:
computing in parallel, 913
numbering, 112
remembering types of, 214
removing from the middle, 474
equality testing for, 234
hash codes of, 238
in command-line parameters, 116
multidimensional, 120–125, 240
not of generic types, 321, 431–432, 441
of integers, 240
of subclass/superclass references, 214
of wildcard types, 432
out-of-bounds access in, 360
parallel operations on, 912
equal to 1, 341
increasing, 115
setting at runtime, 244
Arrays class
copyOfRange method, 119
fill method, 120
hashCode method, 238
sort method, 117–119, 290, 292, 294, 314, 318
arrays/CopyOfTest.java, 278
ArrayStoreException, 431, 433, 441
Ascender, ascent (in typesetting), 576
asList method (Arrays), 509, 516, 526
checking parameters with, 386–387
defined, 384
documenting assumptions with, 387–388
Asynchronous methods, 915
atan, atan2 methods (Math), 58
client-side locking for, 883
in concurrent hash maps, 907–909
performance of, 888
AtomicType classes, 887
Audio files, accessing from applets, 816–817
@author comment (javadoc), 196, 199
AutoCloseable interface, 376
await method (Condition), 856, 873–877, 893–895
awaitUninterruptibly method (Condition), 893–895
AWT (Abstract Window Toolkit), 538
events in:
tracing, 771
preferred field sizes in, 649
AWTEvent class, 624
\b (backspace escape sequence), 50
Background
erasing, 842
painting, 558
Backspace, escape sequence for, 50
BadCastException, 451
Base classes. See Superclasses
Baseline (in typesetting), 576, 718
Basic multilingual planes, 51
BasicButtonUI class, 637
BasicService interface, 831
isWebBrowserSupported method, 836
showDocument method, 836
Batch files, 193
Beans, 780
beep method (Toolkit), 305
BiConsumer interface, 326
BiFunction interface, 319, 326
BIG-5 standard, 51
BigDecimal, BigInteger classes, 108–111
add, compareTo, subtract, multiply, divide, mod methods, 110–111
BigIntegerTest/BigIntegerTest.java, 109
BinaryOperator interface, 326
binarySearch method
BiPredicate interface, 326
and the sieve of Eratosthenes benchmark, 533–536
Bitecode files, 43
BitSet interface, 460, 532–536
methods of, 533
Blank lines, printing, 46
BlockingDeque interface
offerFirst/Last, pollFirst/Last methods, 905
putFirst/Last, takeFirst/Last methods, 904
BlockingQueue interface
add, element, peek, remove methods, 898–899
offer, poll, put, take methods, 898–899, 904
blockingQueue/BlockingQueueTest.java, 900
nested, 89
Boolean class
converting from boolean, 252
hashCode method, 237
boolean type, 52
default initialization of, 172
formatting output for, 83
no casting to numeric types for, 61
BooleanHolder class, 255
Border layout manager, 641–644
border/BorderFrame.java, 665
createTypeBorder methods, 664–667
constants of, 642
compound, 664
rounded corners of, 665
styles of, 664
with a title, 664
bounce/Ball.java, 844
bounce/BallComponent.java, 845
bounce/Bounce.java, 842
bounceThread/BounceThread.java, 849
Bounded collections, 463
Bounds checking, 115
Box layout, 700
labeled/unlabeled, 106
missing, 412
brighter method (Color), 571
BrokenBarrierException, 937
Browsers
default, 831
installing Java Plug-in in, 803
Java-enabled, 809
MIME types in, 825
running applets in, 8, 33–39, 802–803, 818–820
Buckets (of hash tables), 485
button/ButtonFrame.java, 594
ButtonGroup class, 660
add method, 663
ButtonModel interface, 636–638
getActionCommand method, 661, 663
getSelectedObjects method, 661
properties of, 637
Buttons
appearance of, 632
associating actions with, 610
clicking, 592
creating, 591
listening to, 592
model-view-controller analysis of, 636–638
rearranging automatically, 639
ButtonUIListener class, 637
Byte class
converting from byte, 252
hashCode method, 237
byte type, 47
ByteArrayOutputStream class, 830
C programming language
assert macro in, 385
event-driven programming in, 588
function pointers in, 279
integer types in, 6
C# programming language, 8
delegates in, 280
polymorphism in, 218
useful features of, 11
C++ programming language
, (comma) operator in, 65
>> operator in, 64
access privileges in, 156
algorithms in, 518
bitset template in, 532
boolean values in, 52
classes in, 45
nested, 330
code units and code points in, 70
control flow in, 89
copy constructors in, 139
dynamic binding in, 209
dynamic casts in, 221
exceptions in, 361, 364–365, 369
fields in:
static, 161
for loop in, 100
function pointers in, 279
#include in, 184
methods in:
accessor, 142
default, 300
destructor, 181
static, 161
namespace, using directives in, 184
new operator in, 151
NULL, object pointers in, 139
operator overloading in, 109
passing parameters in, 167, 169
performance of, compared to Java, 534
polymorphism in, 218
protected modifier in, 228
pure virtual functions (= 0) in, 224
references in, 139
Standard Template Library in, 460, 465
static member functions in, 45
superclasses in, 208
syntax of, 3
templates in, 11, 420, 423, 426
this pointer in, 176
type parameters in, 422
using iterators as parameters in, 530
variables in, 55
redefining in nested blocks, 90
vector template in, 247
virtual constructors in, 263
void* pointer in, 229
Cache, 827
calculator/CalculatorPanel.java, 645
Calendar class, 140
get/setTime methods, 218
Calendars
vs. time measurement, 140
CalendarTest/CalendarTest.java, 144
Call by reference, 164
Callable interface, 927
wrapper for, 916
Camel case (CamelCase), 43
cancel method (Future), 915, 920–921, 945
CancellationException, 945
Canned functionality, 934
canRead/Write methods (FileContents), 837
Carriage return, escape sequence for, 50
case statement, 104
cast method (Class), 451
bad, 360
checking before attempting, 220
ceiling method (NavigableSet), 493
ChangeListener interface, 672
Character class
converting from char, 252
hashCode method, 237
isJavaIdentifierXxx methods, 53
Characters, formatting output for, 83
charAt method (String), 70, 72
chart/Chart.java, 813
checkBox/CheckBoxFrame.java, 658
applicability of, 383
suppressing with generics, 437–439
Checked views, 513
checkedCollection methods (Collections), 515
Child classes. See Subclasses
ChronoLocalDate interface, 446
Church, Alonzo, 315
circleLayout/CircleLayout.java, 725
circleLayout/CircleLayoutFrame.java, 728
Clark, Jim, 10
Clarke, Arthur C., 717
cast method, 451
getClass method, 261
getComponentType method, 277
getConstructor, getDeclaredConstructor methods, 451
getConstructors, getDeclaredConstructors methods, 266, 270
getDeclaredMethods method, 266, 270, 280
getEnumConstants method, 451
getField, getDeclaredField methods, 275
getFields, getDeclaredFields methods, 266, 270, 272, 275
getGenericXxx methods, 457
getImage, getAudioClip methods, 784
getMethod method, 280
getResource, getResourceAsStream methods, 784, 787
getSuperclass method, 244, 451
getTypeParameters method, 457
newInstance method, 263, 265, 451
Class constants, 55
.class file extension, 43
locating, 192
class keyword, 42
checking directories on, 412
setting, 193
Class wins rule, 301
Class<T> parameters, 452
ClassCastException, 220, 276, 295, 435, 441, 513
access privileges for, 156
analyzing:
objects of, at runtime, 271–276
constructors for, 149
at runtime, 350
deprecated, 197
documentation comments for, 194–198
encapsulation of, 131–132, 153–156
extending, 132
generic, 245, 418–420, 441, 669
immutable, 157
implementing multiple interfaces, 296–297
anonymous, 606
multiple source files for, 149
full package, 183
number of basic types in, 200
package scope of, 189
public, 194
accessing, 183
relationships between, 133–135
serializable, 412
sharing, among programs, 191
unit testing, 162
ClassLoader class, 388
CLASSPATH environment variable, 26, 193
clear method
of BitSet, 533
clearAssertionStatus method (ClassLoader), 388
clone method
of array types, 311
clone/CloneTest.java, 312
clone/Employee.java, 312
CloneNotSupportedException, 310
close method
of Closeable, 376
of Handler, 406
Closeable interface, 376
Closures, 323
Code errors, 359
Code planes, 52
Code points, code units, 52, 70
Codebase (in JNLP files), 831
codePointAt, codePoints methods (String), 72
codePointCount method (String), 70, 73
Collection interface, 463, 469, 479
contains, containsAll methods, 467–468, 479
equals method, 467
remove, removeAll methods, 467–468
retain method, 467
retainAll method, 469
bounded, 463
concurrent modifications of, 479
debugging, 479
elements of:
inserting, 469
maximum, 517
removing, 465
traversing, 464
lightweight wrappers for, 509–510
sorted, 489
type parameters for, 418
using for method parameters, 527
Collections class, 520
addAll method, 523
checkedCollection, emptyCollection methods, 515
copy method, 523
disjoint method, 524
fill method, 523
frequency method, 524
indexOfSubList, lastIndexOfSubList methods, 524
min, max methods, 523
replaceAll method, 523
reverse method, 524
rotate method, 524
singleton, singletonCollection methods, 510, 515
swap method, 524
synchronizedCollection methods, 512–513, 515, 915
unmodifiableCollection methods, 511–512, 514
Collections framework. See Java collections
framework (JCF)
brighter, darker methods, 571
predefined constants, 570
colorChooser/ColorChooserPanel.java, 767
Colors
changing, 609
custom, 570
foreground, 570
system, 571
Columns (of a text field), 649
com.sun.java package, 599
adding items to, 669
current selection in, 669
comboBox/ComboBoxFrame.java, 670
Command line
compiling/launching Java from, 24
parameters in, 116
blocks of, 46
for automatic documentation, 46, 194–199
in property files, 599
not nesting, 47
to the end of line, 46
Comparable interface, 288, 352, 422–423, 446, 519
comparator method (SortedMap), 493, 500
Comparator interface, 305–306, 314, 328–329, 519
chaining comparators in, 328
lambdas and, 318
naturalOrder method, 329
nullFirst/Last methods, 329
reversed, reverseOrder methods, 329, 519, 521
compare method (integer types), 294, 318
compareAndSet method (AtomicType), 887
compareTo method
in subclasses, 295
of BigDecimal, BigInteger, 110–111
of Comparable, 289–293, 422, 446
of Enum, 260
of String, 72
Compilation errors, 29
Compiler
autoboxing in, 254
bridge methods in, 428
command-line options of, 412
creating bytecode files in, 43
deducting method types in, 421
enforcing throws specifiers in, 368
just-in-time, 6–7, 14, 153, 218, 413, 534
launching, 25
optimizing method calls in, 7, 218
overloading resolution in, 215
translating inner classes in, 336
translating typed array lists in, 252
type parameters in, 417
whitespace in, 44
combining, 933
composing, 932
exception handling in, 933
CompletableFuture class
acceptEither, applyToEither methods, 934
allOf, anyOf methods, 934
handle method, 933
runAfterXxx methods, 934
thenAccept, thenApply, thenApplyAsync, thenRun methods, 933
thenAcceptBoth, thenCombine methods, 934
whenComplete method, 933
CompletionStage interface, 934
Component class, 627
getBackground/Foreground methods, 573
getFont method, 651
getPreferredSize method, 557, 559
getSize method, 552
inheritance hierarchies of, 640
isVisible method, 552
setBackground/Foreground methods, 570, 573
setBounds method, 546, 548, 552, 724
setCursor method, 624
setLocation method, 546, 548, 552
setSize method, 552
setVisible method, 546, 552, 951
Components, 639
displaying information in, 553
realized, 951
Composite design pattern, 631
CompoundInterest/CompoundInterest.java, 122
Computations
truncated, 56
compute, computeIfPresent/Absent methods (Map), 501
Concrete methods, 222
Concurrent hash maps
buckets as trees in, 906
efficiency of, 906
size of, 906
Concurrent modification detection, 479
Concurrent programming, 7, 839–952
Concurrent sets, 912
ConcurrentHashMap class, 905–907
compute, computeIfXxx methods, 908–909
get method, 908
keySet, newKeySet methods, 912
mappingCount method, 906
merge method, 909
organizing buckets as trees in, 906
put, putIfAbsent methods, 908
reduce, reduceXxx methods, 910–911
replace method, 908
search, searchXxx methods, 910–911
vs. synchronization wrappers, 914
ConcurrentLinkedQueue class, 905, 907
ConcurrentModificationException, 478–479, 906, 914
ConcurrentSkipListMap class, 905–907
ConcurrentSkipListSet class, 905, 907
Condition interface, 878
awaitUninterruptibly method, 893–895
signal, signalAll methods, 890
vs. synchronization methods, 880
Condition variables, 872
config method (Logger), 390, 404
Confirmation dialogs, 733
Console
debugging applets in, 807
Console class
reading passwords with, 80
readLine/Password methods, 81
console method (System), 81
ConsoleHandler class, 394–399, 407
ConsoleWindow class, 770
const keyword, 56
documentation comments for, 196
names of, 55
static, 159
Constructor class, 265
getDeclaringClass method, 270
getXxxTypes methods, 270
Constructor references, 321–322
Constructors, 149–151, 171–182
calling another constructor in, 176
defined, 136
documentation comments for, 194
field initialization in:
explicit, 174
final, 265
initialization blocks in, 177–181
overloading, 172
parameter names in, 175
private, 265
protected, 194
with super keyword, 207
ConstructorTest/ConstructorTest.java, 179
Consumer interface, 326
Consumer threads, 898
Container class, 639
setLayout method, 641
Containers, 639
contains method
of HashSet, 487
containsAll method (Collection), 467–468, 479
containsKey/Value methods (Map), 499
Content pane, 554
continue statement, 108
Controllers, 633
Cooperative scheduling, 856
Coordinated Universal Time (UTC), 139
copy method (Collections), 523
copyArea method (Graphics), 583, 586
copyOf method (Arrays), 115, 119, 276
copyOfRange method (Arrays), 119
CopyOnWriteArrayList class, 912, 914
CopyOnWriteArraySet class, 912
Core Java program examples, 23
Cornell, Gary, 1
cos method (Math), 58
Count of Monte Cristo, The (Dumas), 490, 944–946
Countdown latches, 936
Covariant return types, 429
create method
of EventHandler, 598
of PersistenceService, 831, 837
createCustomCursor method (Toolkit), 618, 623
createDialog method (JColorChooser), 770
createFont method (Font), 575
createScreenCapture method (Robot), 778
createTypeBorder methods (BorderFactory), 664–667
createXxxGroup methods (GroupLayout), 722
Ctrl+\, for thread dump, 889
Ctrl+C, for program termination, 863, 875
Ctrl+O, Ctrl+S accelerators, 687
Ctrl+Shift+F1, in Swing, 770
Ctrl+Tab, in text fields, 729
current method (ThreadLocalRandom), 893
Current user, 794
currentThread method (Thread), 851–854
Cursor class, getPredefinedCursor method, 617
Cursor shapes, 618
Custom layout managers, 724–728
Customizations. See Preferences
D suffix (double numbers), 49
Daemon threads, 859
darker method (Color), 571
Data fields
public, 150
boolean type, 52
conversions between, 59–60, 219–221
Databases, closing connections to, 372
dataExchange/DataExchangeFrame.java, 748
dataExchange/PasswordChooser.java, 749
Date and time
no built-in types for, 136
Date class, 140
getDay/Month/Year methods (deprecated), 141
toString method, 137
DateInterval class, 428
breaking up, 893
in GUI, 897
applets, 807
collections, 479
debuggers for, 409
generic types, 513
including class names in, 344
intermittent bugs, 69, 545, 952
messages for, 366
reflection for, 272
trapping program errors in a file for, 411
when running applications in terminal window, 25–26
DebugGraphics class, 771
Decorator design pattern, 631
Deep copies, 308
deepToString method (Arrays), 122, 240
resolving conflicts in, 300–302
Default packages, 185
default statement, 104, 298–300
DefaultButtonModel class, 636
DefaultComboBoxModel class, 669
Deferred execution, 325
delay method (Robot), 778
Delayed interface, 900
Delegates, 280
delete method
of PersistenceService, 838
of StringBuilder, 78
Deprecated classes, 197
Deprecated methods, 141, 197, 412
Deprecated variables, 197
@deprecated comment (javadoc), 197
addFirst/Last methods, 494
getFirst/Last methods, 495
offerFirst/Last methods, 494
peekFirst/Last methods, 495
pollFirst/Last methods, 495
removeFirst/Last methods, 495
Derived classes. See Subclasses
deriveFont method (Font), 575, 581
Descender, descent (in typesetting), 576
descendingIterator method (NavigableSet), 493
Design Patterns—Elements of Reusable Object-Oriented Software (Gamma et al.), 632
destroy method (Applet), 808
Development environments
in terminal window, 25
Device errors, 359
dialog/AboutDialog.java, 744
dialog/DialogFrame.java, 743
accepting/canceling, 746
centering, 304
closing, 603–607, 688, 743, 746
confirmation, 733
default button in, 748
displaying, 743
document- and toolkit-modal, 742
input, 733
maximized, 603
data exchange with, 747
pop-up, 821
root pane of, 748
Diamond syntax, 245
Dijkstra, Edsger, 935
disjoint method (Collections), 524
divide method (BigDecimal, BigInteger), 110–111
Division operator, 56
Doclets, 199
Documentation comments, 46, 194–199
for fields, 196
for packages, 198
general, 196
HTML markup in, 194
hyperlinks in, 198
links to other files in, 195
overview, 198
Document-modal dialogs, 742
doInBackground method (SwingWorker), 944–945, 950
Do-nothing methods, 604
Double brace initialization, 344
Double buffering, 771
Double class
compare method, 294
converting from double, 252
hashCode method, 237
POSITIVE_INFINITY, NEGATIVE_INFINITY, NaN constants, 49
double type, 48
arithmetic computations with, 56
converting to other numeric types, 59–60
DoubleAccumulator, DoubleAdder classes, 889
Double-precision numbers, 48–49
Doubly linked lists, 474
draw method (Graphics2D), 561
draw/DrawTest.java, 566
drawImage method (Graphics), 582, 585
drawString method (Graphics/Graphics2D), 581
Drop-down lists, 668
Dynamic languages, 8
e (exponent), in numbers, 49
E
as type variable, 419
constant (Math), 58
configuring projects in, 28
editing source files in, 29
imports in, 183
SWT toolkit, 543
ECMA-262 (JavaScript subset), 15
Eiffel programming language, multiple inheritance in, 297
element method
of Queue, 494
elements method (Hashtable, Vector), 530
Ellington, Duke, 539
setFrameFromCenter method, 565
setFrameFromDiagonal method, 564
Ellipse2D.Double class, 569
bounding rectangles of, 563–565
constructing, 565
filling with color, 569
EmployeeTest/EmployeeTest.java, 147
emptyCollection methods (Collections), 515
protected instance fields and, 284
endsWith method (String), 72
ensureCapacity method (ArrayList), 246–247
entering method (Logger), 405
Enterprise Edition (Java EE), 11, 18
entrySet method (Map), 502–503
compareTo, ordinal methods, 260
toString, valueOf methods, 258, 260
enum keyword, 65
Enumerated types, 65
equality testing for, 258
in switch statement, 105
Enumeration interface, 460, 528–530
nextElement, hasMoreElements methods, 465, 528, 530
Enumeration maps/sets, 506
as a concrete collection type, 472
enums/EnumTest.java, 259
EnumSet class, 506
allOf, noneOf, of, range methods, 508
as a concrete collection type, 472
EOFException, 364
Epoch, 139
equals method, 302
for wrappers, 254
implementing, 233
of Collection, 467
of proxy classes, 355
of Set, 471
equals/Employee.java, 241
equals/EqualsTest.java, 240
equals/Manager.java, 243
equalsIgnoreCase method (String), 68, 72
Error class, 360
checking, in mutator methods, 154
code, 359
compilation, 29
device, 359
messages for, 369
NoClassDefFoundError, 26
physical limitations, 359
user input, 359
Escape sequences, 50
Event delegation model, 588
Event dispatch thread, 545, 846, 897
time-consuming tasks and, 939
defined, 587
for asynchronous actions, 931
semantic vs. low-level events, 626
with a single method call, 597
with lambda expressions, 595
Event objects, 588
Event procedures, 587
EventHandler class
create method, 598
creating listeners automatically with, 597
getActionCommand method, 624
EventQueue class
invokeAndWait method, 940, 943
invokeLater method, 940, 943, 952
isDispatchThread method, 943
eventTracer/EventTracer.java, 772
ExampleFileView class, 757
Exception specification, 362
Exceptions
ArrayIndexOutOfBoundsException, 112, 361–363, 938
ArrayStoreException, 431, 433, 441
BadCastException, 451
BrokenBarrierException, 937
CancellationException, 945
catching, 263–265, 363, 367–381
changing type of, 370
checked, 261–264, 361–364, 383
ClassCastException, 220, 276, 295, 435, 441, 513
CloneNotSupportedException, 310
ConcurrentModificationException, 478–479, 906, 914
documentation comments for, 196
EOFException, 364
FileNotFoundException, 362–364, 438
IllegalAccessException, 272
IllegalStateException, 465, 469, 483, 494, 899
InterruptedException, 841, 847, 851–854, 893–895, 915
IOException, 88, 361, 364, 368, 375
micromanaging, 381
NoSuchElementException, 464, 469, 483, 494–495
NullPointerException, 361, 383
NumberFormatException, 383
rethrowing and chaining, 370, 410
ServletException, 370
squelching, 383
“throw early, catch late,” 384
TimeoutException, 915
UnavailableServiceException, 830
UnsupportedOperationException, 503, 510, 512, 514
using type variables in, 437
variables for, implicitly final, 370
vs. simple tests, 381
wrapping, 371
Exchangers, 937
.exe file extension, 783
Executable path, 20
execute method (SwingWorker), 945, 950
Execution flow, tracing, 391
ExecutionException, 933
ExecutorCompletionService class, 927
poll, submit, take methods, 928
groups of tasks, controlling, 927–928
scheduled, 926
Executors class
newCachedThreadPool method, 921, 925
newFixedThreadPool method, 921, 925
newScheduledThreadPool method, 921, 926
newSingleThreadExecutor method, 921, 925
newSingleThreadScheduledExecutor method, 921, 926
ExecutorService interface, 921–922
invokeAny/All methods, 927–928
Exit codes, 45
exit method (System), 45
exiting method (Logger), 391, 405
exp method (Math), 58
exportXxx methods (Preferences), 795, 800
ExtendedService class, 830
extends keyword, 204–228, 422–423
External padding, 704
F suffix (float numbers), 49
Factorial functions, 378
Factory methods, 161
Fair locks, 872
Fallthrough behavior, 105, 412
fdlibm (Freely Distributable Math Library), 59
Field class, 265
get method, 276
getDeclaringClass method, 270
getType method, 265
set method, 276
Field width, of numbers, 82
Fields
adding, in subclasses, 207
default initialization of, 172–173
documentation comments for, 194, 196
instance, 131, 150–153, 157, 174, 200
public static final, 296
static, 158–159, 178, 185, 436
File access warning, 831
adding accessory components to, 757
fileChooser/FileIconView.java, 762
fileChooser/ImagePreviewer.java, 761
fileChooser/ImageViewerFrame.java, 759
FileContents class
canRead/Write methods, 837
getName method, 837
getXxxStream methods, 830, 837
FileFilter class (Swing)
getDescription method, 755, 764
FileFilter interface (java.io package), 755
FileHandler class, 394–399, 407
configuration parameters of, 396
FileNameExtensionFilter interface, 764
FileNotFoundException, 362–364, 438
FileOpenService class
openFileDialog method, 830, 837
openMultiFileDialog method, 837
Files
extensions of, 757
MIME types of, 825
opening/saving in GUI, 752–764
reading, 87
all words from, 376
in a separate thread, 944
writing, 87
FileSaveService class
saveAsFileDialog method, 837
saveFileDialog method, 830, 837
FileView class, 756
getIcon, getName, getDescription, getTypeDescription methods, 756, 764
isTraversable method, 756, 764
of Arrays, 120
of Collections, 523
Filter interface, 398
final access modifier, 55, 217–218
checking, 265
for fields in interfaces, 296
for instance fields, 157
for methods in superclass, 295
for shared fields, 886
not completed normally, 412
return statements in, 374
unlock operation in, 869
without catch, 373
Financial calculations, 49
fine, finer, finest methods (Logger), 390, 404
Firefox, 34
first method (SortedSet), 493
First Person, Inc., 10
firstKey method (SortedMap), 500
FirstSample/FirstSample.java, 46
Float class
converting from float, 252
hashCode method, 237
POSITIVE_INFINITY, NEGATIVE_INFINITY, NaN constants, 49
float type, 48
converting to other numeric types, 59–60
arithmetic computations with, 56
equality of, 101
Floating-point overflow, 57
floor method (NavigableSet), 493
floorMod method (Math), 57
Flow layout manager, 638
FlowLayout class, 641
flush method (Handler), 406
FocusAdapter class, 626
FocusEvent class, 626
isTemporary method, 627
FocusListener interface, 626
focusGained/Lost methods, 627
createFont method, 575
getFamily, getFontName, getName methods, 580
getLineMetrics method, 577, 580
getStringBounds method, 576–577, 580
font/FontTest.java, 578
fontconfig.properties file, 575
FontMetrics class, getFontRenderContext method, 582
checking availability of, 573
face/family names of, 573
logical names of, 574
styles of, 575
typesetting properties of, 576
for array lists, 249
for multidimensional arrays, 122
comma-separated lists of expressions in, 65
defining variables inside, 101
for collections, 464
forEach method
of Map, 499
Foreground color, specifying, 570
Fork-join framework, 928
forkJoin/ForkJoinTest.java, 930
Format specifiers (printf), 82
format, formatTo methods (String), 83
Formattable interface, 83
Formatter class, methods of, 399, 408
forName method (Class), 261, 265
Frame class, 543
get/setExtendedState method, 553
getIconImage method, 553
getTitle method, 553
is/setUndecorated methods, 553
isResizable method, 553
Frames
closing by user, 545
decorating, 546
displaying:
text in, 557
properties of, 549
frequency method (Collections), 524
Full-screen mode, 550
Function interface, 326
Functional interfaces, 318–319
abstract methods in, 318
annotating, 328
conversion to, 318
generic, 319
using supertype bounds in, 447
@FunctionalInterface annotation, 328
Functions. See Methods
Future interface, 927
cancel method, 915, 920–921, 945
get method, 915, 919, 921, 945
isCancelled, isDone methods, 915, 920–921
future/FutureTest.java, 917
combining multiple, 934
hash maps and, 504
GB18030 standard, 51
General Public License (GPL), 14
extending/implementing other generic classes, 441
no throwing or catching instances of, 436–437
collection interfaces in, 525
converting to raw types, 412, 441
debugging, 513
expressions in, 426
inheritance rules for, 440–442
legacy code and, 429
methods in, 421–422, 427–429, 466–469
required skill levels for, 417
static fields or methods and, 436
type matching in, 452
vs. arrays, 321
GenericArrayType interface, 453
getGenericComponentType method, 458
genericReflection/GenericReflectionTest.java, 454
get method
of Array, 279
of BitSet, 533
of ConcurrentHashMap, 908
of Field, 276
of LinkedList, 480
of LongAccumulator, 888
of PersistenceService, 838
of ThreadLocal, 893
of Vector, 883
getActionCommand method
of EventObject, 624
getActionMap method (JComponent), 615
getActualTypeArguments method (ParameterizedType), 458
getAdjustable, getAdjustmentType methods (AdjustmentEvent), 627
getAncestorOfClass method (SwingUtilities), 747, 752
getAndType methods (AtomicType), 887
getApplet, getApplets methods (AppletContext), 818, 820
getAppletContext method (Applet), 818–820
getAppletInfo method (Applet), 816
getAscent method (LineMetrics), 581
getAudioClip method (Class), 784, 817
getAutoCreateXxx methods (GroupLayout), 722
getAvailableFontFamilyNames method (GraphicsEnvironment), 573
getBackground method (Component), 573
getBoolean method (Array), 279
getBounds method (TypeVariable), 457
getByte method (Array), 279
getCause method (Throwable), 379
getCenterX/Y methods (RectangularShape), 563, 568
getChar method (Array), 279
getClass method
always returning raw types, 431
of Class, 261
of Object, 244
getClassName method
of LookAndFeelInfo, 603
of StackTraceElement, 380
getClickCount method (MouseEvent), 616, 623, 627
getCodeBase method
getColor method
of Graphics, 572
of JColorChooser, 770
getColumns method (JTextField), 650
getComponentPopupMenu method (JComponent), 686
getComponentType method (Class), 277
getConstructor method (Class), 451
getConstructors method (Class), 266, 270
getContentPane method (JFrame), 559
getDataType methods (Preferences), 795, 800
getDay method (Date, deprecated), 141
getDayXxx methods (LocalDate), 141, 145
getDeclaredConstructor method (Class), 451
getDeclaredConstructors method (Class), 266, 270
getDeclaredField method (Class), 275
getDeclaredFields method (Class), 266, 270, 272, 275
getDeclaredMethods method (Class), 266, 270, 280
getDeclaringClass method (java.lang.reflect), 270
getDefaultScreenDevice method (GraphicsEnvironment), 774, 778
getDefaultToolkit method (Toolkit), 305, 549, 553
getDefaultUncaughtExceptionHandler method (Thread), 861
getDelay method (Delayed), 900, 903
getDescent method (LineMetrics), 581
getDescription method
getDocumentBase method (Applet), 816–817
getDouble method (Array), 279
getEnumConstants method (Class), 451
getExceptionTypes method (Constructor), 270
getExtendedState method (Frame), 553
getFamily method (Font), 580
getField method (Class), 275
getFields method (Class), 266, 270, 275
getFileName method (StackTraceElement), 380
getFilter method (Handler, Logger), 406
getFirst/Last methods
of Deque, 495
of LinkedList, 484
getFloat method (Array), 279
getFont method
of Component, 651
of Graphics, 581
getFontMetrics method (JComponent), 577, 582
getFontName method (Font), 580
getFontRenderContext method
of FontMetrics, 582
getForeground method (Component), 573
getFormatter method (Handler), 406
getGenericComponentType method (GenericArrayType), 458
getGenericParameterTypes, getGenericReturnType methods (Method), 457
getGenericXxx methods (Class), 457
getGlobal method (Logger), 389, 410
getHandlers method (Logger), 406
getHead method (Formatter), 399, 408
getHeight method
of LineMetrics, 581
getHonorsVisibility, getHorizontalGroup methods (GroupLayout), 722
getIcon method
of JLabel, 652
getIconImage method (Frame), 553
getImage method
of Applet, 817
of Class, 784
getInheritsPopupMenu method (JComponent), 686
getInputMap method (JComponent), 612, 615
getInputStream method (FileContents), 830, 837
getInstalledLookAndFeels method (UIManager), 602
getInt method (Array), 279
getItem, getItemSelectable methods (ItemEvent), 627
getItemAt method (JComboBox), 669
getKey method (Map.Entry), 503
getKeyStroke method (KeyStroke), 610, 615
getKeyXxx methods (KeyEvent), 627
getLargestPoolSize method (ThreadPoolExecutor), 926
getLeading method (LineMetrics), 581
getLength method (Array), 277, 279
getLevel method
of Handler, 406
of Logger, 405
of LogRecord, 407
getLineMetrics method (Font), 577, 580
getLineNumber method (StackTraceElement), 380
getLocalGraphicsEnvironment method (GraphicsEnvironment), 774, 778
getLogger method (Logger), 390, 404
getLoggerName method (LogRecord), 407
getLong method (Array), 279
getLowerBounds method (WildcardType), 458
getMaxX/Y methods (RectangularShape), 568
getMessage method
of LogRecord, 407
of Throwable, 366
getMethod method (Class), 280
getMethodName method (StackTraceElement), 380
getMethods method (Class), 266, 270
getMillis method (LogRecord), 408
getMinX/Y methods (RectangularShape), 568
getModifiers method
of ActionEvent, 627
of java.lang.reflect, 265, 270
getModifiersEx method (InputEvent), 617, 623
getModifiersExText method (InputEvent), 623
getMonth method (Date, deprecated), 141
getMonthXxx methods (LocalDate), 141, 145
getName method
of FileContents, 837
of Font, 580
of java.lang.reflect, 265, 270
of LookAndFeelInfo, 603
of TypeVariable, 457
getNames method (PersistenceService), 838
getNewState, getOldState methods (WindowEvent), 607, 628
getOppositeWindow method (WindowEvent), 628
getOrDefault method (Map), 499
getOutputStream method (FileContents), 830, 837
getOwnerType method (ParameterizedType), 458
getPaint method (Graphics2D), 573
getParameter method (Applet), 810–811, 816
getParameterInfo method (Applet), 816
getParameters method (LogRecord), 407
getParameterTypes method (Method), 270
getParent method (Logger), 406
getPassword method (JPasswordField), 653
getPoint method (MouseEvent), 623, 627
getPredefinedCursor method (Cursor), 617
getPreferredSize method (Component), 557, 559
getProperties method (System), 789, 793
getProperty method
of System, 793
getProxyClass method (Proxy), 355–356
getRawType method (ParameterizedType), 458
getResource, getResourceAsStream methods (Class), 784, 787
getResourceBundle, getResourceBundleName methods (LogRecord), 407
getReturnType method (Method), 270
getRootPane method (JComponent), 748, 752
getScreenSize method (Toolkit), 549, 553
getScrollAmount method (MouseWheelEvent), 628
getSelectedFile/Files methods (JFileChooser), 754, 763
getSelectedItem method (JComboBox), 669–671
getSelectedObjects method (ItemSelectable), 661
getSelection method (ButtonGroup), 661, 663
getSequenceNumber method (LogRecord), 408
getServiceNames method (ServiceManager), 836
getShort method (Array), 279
getSize method (Component), 552
getSource method (EventObject), 598, 624
getSourceXxxName methods (LogRecord), 408
getStackTrace method (Throwable), 377, 379
getState method
of SwingWorker, 950
of Thread, 858
getStateChange method (ItemEvent), 627
getStringBounds method (Font), 576–577, 580
getSuperclass method (Class), 244, 451
getSuppressed method (Throwable), 377, 380
getTail method (Formatter), 399, 408
Getter/setter pairs. See Properties
getText method
of JLabel, 652
of JTextComponent, 650
getThreadID method (LogRecord), 408
getThrown method (LogRecord), 408
getTime method (Calendar), 218
getTitle method (Frame), 553
getType method (Field), 265
getTypeDescription method (FileView), 756, 764
getTypeParameters method (Class, Method), 457
getUncaughtExceptionHandler method (Thread), 861
getUpperBounds method (WildcardType), 458
getUseParentHandlers method (Logger), 406
getValue method
of AdjustmentEvent, 627
of Map.Entry, 503
getWheelRotation method (MouseWheelEvent), 628
getWidth method
of Rectangle2D, 563
getWindow method (WindowEvent), 628
getX/Y methods
of RectangularShape, 568
getYear method
of Date (deprecated), 141
GMT (Greenwich Mean Time), 139
Graphical User Interface (GUI), 537–586
deadlocks in, 897
events in, 587
keyboard focus in, 611
drawString method, 581
get/setFont methods, 581
getColor method, 572
Graphics editor applications, 616–624
draw method, 561
drawString method, 582
getFontRenderContext method, 576, 582
getPaint method, 573
GraphicsDevice class, 550, 774
GraphicsEnvironment class, 550
getAvailableFontFamilyNames method, 573
getDefaultScreenDevice method, 774, 778
getLocalGraphicsEnvironment method, 774, 778
Green project, 10
GregorianCalendar class, 142
add method, 142
padding in, 704
gridbag/FontFrame.java, 707
gridbag/GBC.java, 709
GridBagConstraints class, 703
fill, anchor parameters, 704, 712
gridx/y, gridwidth/height parameters, 703–706, 712
ipadx/y parameters, 712
GridLayout class, 641, 644–648
methods of, 722
groupLayout/FontFrame.java, 719
GroupLayout.Group class, 723
GroupLayout.ParallelGroup class, 723
GroupLayout.SequentialGroup class, 723
GUI. See Graphical User Interface
handle method (CompletableFuture), 933
Handler class, 397
close method, 406
flush method, 406
get/setFilter methods, 406
get/setLevel methods, 406
getFormatter method, 406
Hansen, Per Brinch, 884
hash method (Objects), 237
default, 235
formatting output for, 83
Hash collisions, 486
Hash maps, 497
setting, 497
vs. tree maps, 497
weak, 504
adding elements to, 490
Hash tables, 485
legacy, 528
load factor of, 486
rehashing, 486
null-safe, 236
of Arrays, 238
of Boolean, Byte, Character, Double, Float, Integer, Long, Short, 237
of proxy classes, 355
of Set, 471
of String, 485
as a concrete collection type, 472
add method, 487
as a concrete collection type, 472
contains method, 487
Hashtable interface, 460, 528, 914–915
as a concrete collection type, 472
elements, keys methods, 530
synchronized methods, 528
hasMoreElements method (Enumeration), 465, 528, 530
hasNext method
of Scanner, 81
hasNextType methods (Scanner), 81
hasPrevious method (ListIterator), 476, 483
headMap method
of NavigableMap, 517
headSet method (NavigableSet, SortedSet), 511, 516
Heap, 495
dumping, 413
Height (in typesetting), 576
Hexadecimal numbers
prefix for, 48
higher method (NavigableSet), 493
Hoare, Tony, 884
Hold count, 870
Holder types, 255
Hotspot just-in-time compiler, 534
HTML (HyperText Markup Language), 12–13
applet element, 34, 805, 808–810
tables, 701
target attribute, 820
title element, 807
HTML editors, 633
Icons
associating with file extensions, 757
in sliders, 674
identityHashCode method (System), 507, 509
IdentityHashMap class, 507–509
as a concrete collection type, 472
IEEE 754 specification, 49, 59
IFC (Internet Foundation Classes), 538
IllegalAccessException, 272
IllegalStateException, 465, 469, 483, 494, 899
image/ImageTest.java, 583
ImageIcon class, 550
Images
accessing from applets, 816–817
ImageViewer/ImageViewer.java, 31
Immutable classes, 157
Implementations, 460
implements keyword, 290
none, in static methods, 160
state of, 409
static, 185
importPreferences method (Preferences), 795, 800
Inconsistent state, 896
increment method (LongAdder), 888
Incremental linking, 7
incrementAndGet method (AtomicType), 887
Index (in arrays), 111
indexOf method
of List, 483
of String, 73
indexOfSubList method (Collections), 524
info method (Logger), 389–390, 404
Information hiding. See Encapsulation
vs. type parameters, 416, 440–442
inheritance/Employee.java, 210
inheritance/Manager.java, 211
inheritance/ManagerTest.java, 210
init method (Applet), 807, 811
initCause method (Throwable), 379
Initialization blocks, 177–181
static, 178
initialize method (ThreadLocal), 893
accessing object state with, 331–334
defined, 329
local, 339
private, 333
vs. lambdas, 318
innerClass/InnerClassTest.java, 333
Input dialogs, 733
InputEvent class
getModifiersEx method, 617, 623
getModifiersExText method, 623
InputTest/InputTest.java, 80
insert method
of JMenu, 681
of JTextArea, 951
of StringBuilder, 78
insertItemAt method (JComboBox), 669, 671
insertSeparator method (JMenu), 681
Instance fields, 131
final, 157
initializing, 200
explicit, 174
not present in interfaces, 289, 296
protected, 283
public, 150
vs. local variables, 151–152, 173
instanceof operator, 64, 220–221, 295
Instances, 131
creating on the fly, 263
int type, 47
converting to other numeric types, 59–60
fixed size for, 6
platform-independence of, 48
random number generator for, 181
Integer class
converting from int, 252
hashCode method, 237
intValue method, 255
parseInt method, 254, 256, 811
toString method, 256
valueOf method, 256
arithmetic computations with, 56
arrays of, 240
formatting output for, 82
no unsigned types in Java, 48
Integrated Development Environment (IDE), 20, 26–30
Inter-applet communication, 810, 818
interface keyword, 288
Interface types, 462
Interface variables, 295
abstract classes and, 297
constants in, 296
defined, 288
documentation comments for, 194
evolution of, 299
extending, 295
for custom algorithms, 526–528
listener, 588
marker, 309
methods in, 298
do-nothing, 604
nonabstract, 318
no instance fields in, 289, 296
public, 194
interfaces/Employee.java, 293
interfaces/EmployeeSortTest.java, 292
Intermittent bugs, 69, 545, 952
Internal errors, 360, 363, 386
Internal padding, 704
Internationalization. See Localization
Internet Explorer
applets in, 810
Java in, 9
limited Java support in, 803
security of, 15
Interpreted languages, 14
Interpreter, 7
interrupt method (Thread), 851–854
interrupted method (Thread), 853–854
InterruptedException, 841, 847, 851–854, 893–895, 915
IntHolder class, 255
Introduction to Algorithms (Cormen et al.), 489
intValue method (Integer), 255
Invocation handlers, 350
InvocationHandler interface, 350, 355
invoke method
of InvocationHandler, 350, 355
invokeAndWait method (EventQueue), 940, 943
invokeAny/All methods (ExecutorService), 927–928
invokeLater method (EventQueue), 940, 943, 952
IOException, 88, 361, 364, 368, 375
“Is–a” relationship, 133–135, 213, 284
isAbstract method (Modifier), 271
isAccessible method (AccessibleObject), 275
isActionKey method (KeyEvent), 627
isCancelled, isDone methods (Future), 915, 920–921
isDefaultButton method (JButton), 752
isDispatchThread method (EventQueue), 943
isEditable method
of JComboBox, 671
of JTextComponent, 648
isEmpty method (Collection), 299, 467–468
isEnabled method (Action), 608, 615
isFinal method (Modifier), 265, 271
isInterface method (Modifier), 271
isInterrupted method (Thread), 851–854
isJavaIdentifierXxx methods (Character), 53
isLocationByPlatform method (Window), 552
isLoggable method (Filter), 398, 408
isNaN method (Double), 49
isNative method (Modifier), 271
isNativeMethod method (StackTraceElement), 381
ISO 8859–1 standard, 51
isPopupTrigger method
of JPopupMenu, 685
of MouseEvent, 686
isPrivate method (Modifier), 265, 271
isProtected method (Modifier), 271
isProxyClass method (Proxy), 355–356
isPublic method (Modifier), 265, 271
isResizable method (Frame), 553
isSelected method
of AbstractButton, 684
isStatic, isStrict, isSynchronized methods (Modifier), 271
isTemporary method (FocusEvent), 627
isTraversable method (FileView), 756, 764
isUndecorated method (Frame), 553
isVisible method (Component), 552
isVolatile method (Modifier), 271
isWebBrowserSupported method (BasicService), 836
ItemEvent class, 626
getItem, getItemSelectable, getStateChange methods, 627
ItemListener interface, 626
itemStateChanged method, 627
ItemSelectable interface, getSelectedObjects method, 661
Iterable interface, 113
iterator method
of ServiceLoader, 802
“for each” loop, 464
generic, 466
hasNext, next, remove methods, 463, 465, 469
being between elements, 465
weakly consistent, 906
IzPack utility, 783