Thinking in Java, 2nd ed. Revision 9 - Index


, ! , , & , > , < , + , - , 1 , = , @ , A , B , C , D , E , F , G , H , I , J , K , L , M , N , O , P , Q , R , S , T , U , V , W , X , Y , Z , [ , ^ , |


boolean
operators that won’t work with boolean, 1
javac , 1
!

!, 1
!=, 1
operator, 1

‘+’
operator + for String, 1
&

&, 1
&&, 1
&=, 1
>

>, 1
>>, 1
>>=, 1
>=, 1
<

<, 1
<<, 1
<<=, 1
<=, 1
+

+, 1
-

-, 1
1

1.localhost
and RMI, 1
=

==, 1
operator, 1
vs. equals( ), 1
@

@deprecated, 1
A

abstract
class, 1
inheriting from an abstract class, 1
vs. interface, 1
abstract keyword, 1
Abstract Window Toolkit (AWT), 1
AbstractButton, 1
abstraction, 1
AbstractSequentialList, 1
AbstractSet, 1
accept( ), 1
access
class, 1
control, 1, 2
inner classes & access rights, 1
package access and friendly, 1
specifiers, 1, 2, 3
within a directory, via the default package, 1
action( ), 1, 2
cannot combine with listeners, 1
ActionEvent, 1, 2, 3, 4
ActionListener, 1
actionPerformed( ), 1
actor, in use cases, 1
adapters
listener adapters, 1
add( ), 1
add( ), ArrayList, 1
addActionListener( ), 1, 2, 3
addAdjustmentListener( ), 1
addComponentListener( ), 1
addContainerListener( ), 1
addFocusListener( ), 1
addItemListener( ), 1
addition , 1
addKeyListener( ), 1
addListener, 1
addMouseListener( ), 1
addMouseMotionListener( ), 1
addTextListener( ), 1
addWindowListener( ), 1
AdjustmentEvent, 1, 2
AdjustmentListener, 1
adjustmentValueChanged( ), 1
Adler32, 1
aggregate array initialization, 1
aggregation, 1
aliasing, 1
and String, 1
during a method call, 1
align, 1
alphabetic vs. lexicographic sorting, 1
AlreadyBoundException, 1
analysis
and design, object-oriented, 1
paralysis, 1
requirements analysis, 1
AND
bitwise, 1
logical (&&), 1
anonymous inner class, 1, 2, 3
and constructors, 1
anonymous inner class, and table-driven code, 1
appendText( ), 1
applet, 1, 2
advantages for client/server systems, 1
align, 1
and packages, 1
archive tag, for HTML and JAR files, 1
classpath, 1
codebase, 1
combined applets and applications, 1
combined with application, 1
destroy( ), 1
displaying a Web page from within an applet, 1
init( ), 1, 2
initialization parameters, 1
name, 1
packaging applets in a JAR file to optimize loading, 1
parameter, 1
placing inside a Web page, 1
restrictions, 1
start( ), 1, 2
stop( ), 1, 2
appletviewer, 1
application
application builder, 1
application framework, 1
combined applets and applications, 1
combined with Applet, 1
standalone windowed application, 1
windowed applications, 1
application framework, 1
archive tag, for HTML and JAR files, 1
argument
constructor, 1
final, 1, 2
passing a reference into a method, 1
variable argument lists (unknown quantity and type of arguments), 1
array, 1
associative array, 1
associative array, Map, 1
bounds checking, 1
comparing arrays, 1
copying an array, 1
dynamic aggregate initialization syntax, 1
element comparisons, 1
first-class objects, 1
initialization, 1
length, 1, 2
multidimensional, 1
of Object, 1
of objects, 1
of primitives, 1
return an array, 1
ArrayList, 1, 2, 3, 4, 5
add( ), 1
get( ), 1, 2
size( ), 1
type-conscious ArrayList, 1
Arrays class, container utility, 1
Arrays.asList( ), 1
Arrays.binarySearch( ), 1
Arrays.fill( ), 1
assigning objects, 1
assignment, 1
associative array, 1, 2
associative arrays (Maps), 1
auto-decrement operator, 1
auto-increment operator, 1
automatic type conversion, 1
available( ), 1
AWT
Abstract Window Toolkit, 1
action( ), 1, 2
action( ), cannot combine with listeners, 1
ActionEvent, 1, 2, 3, 4
ActionListener, 1
actionPerformed( ), 1
add( ), 1
addActionListener( ), 1, 2
addAdjustmentListener( ), 1
addComponentListener( ), 1
addContainerListener( ), 1
addFocusListener( ), 1
addItemListener( ), 1
addKeyListener( ), 1
addListener, 1
addMouseListener( ), 1
addMouseMotionListener( ), 1
addTextListener( ), 1
addWindowListener( ), 1
AdjustmentEvent, 1, 2
AdjustmentListener, 1
adjustmentValueChanged( ), 1
appendText( ), 1
Applet, 1
applet advantages for client/server systems, 1
applet restrictions, 1
archive tag, for HTML and JAR files, 1
BorderLayout, 1
Button, 1, 2
Button, creating your own, 1
Canvas, 1
CardLayout, 1
Checkbox, 1, 2
Checkbox, Java 1.1, 1
CheckboxGroup, 1
CheckboxMenuItem, 1
CheckboxMenuItem, Java 1.1, 1
Choice, 1
Choice, Java 1.1, 1
Component, 1, 2
ComponentAdapter, 1
componentAdded( ), 1
ComponentEvent, 1, 2
componentHidden( ), 1
ComponentListener, 1
componentMoved( ), 1
componentRemoved( ), 1
componentResized( ), 1
componentShown( ), 1
consume( ) , 1
Container, 1
ContainerAdapter, 1
ContainerEvent, 1, 2
ContainerListener, 1
controlling layout, 1
DataFlavor, 1
desktop colors, 1
Dialog, 1
dialog box, 1
Dialog, Java 1.1, 1
dispatchEvent( ), 1
dispatching messages, 1
dispose( ), 1
drop-down list, 1
East, 1
event listener, 1
Event object, 1
event target, 1
event-driven programming, 1
FileDialog, 1
flavor, clipboard, 1
FlowLayout, 1
Focus traversal, 1
FocusAdapter, 1
FocusEvent, 1, 2
focusGained( ), 1
FocusListener, 1
focusLost( ), 1
Frame, 1, 2
getAppletContext( ), 1
getContents( ), 1
getDirectory( ), 1
getFile( ), 1
getSelectedItems( ), 1
getState( ), 1
getText( ), 1
getTransferData( ), 1
getTransferDataFlavors( ), 1
gotFocus( ), 1
graphics, 1
GridBagLayout, 1
GridLayout, 1
handleEvent( ), 1, 2
inner classes, 1
isDataFlavorSupported( ), 1
isFocusTraversable( ), 1
ItemEvent, 1, 2, 3
ItemListener, 1, 2
itemStateChanged( ), 1
JAR, packaging applets to optimize loading, 1
KeyAdapter, 1
keyDown( ), 1
KeyEvent, 1, 2
KeyListener, 1
keyPressed( ), 1
keyReleased( ), 1
keyTyped( ), 1
keyUp( ), 1
Label, 1
List, 1
list boxes, 1
List, Java 1.1, 1
listener adapters, 1
lostFocus( ), 1
Menu, 1
menu shortcuts, 1
Menu, Java 1.1, 1
MenuBar, 1, 2
MenuComponent, 1
MenuItem, 1, 2
MenuItem, Java 1.1, 1
MouseAdapter, 1
mouseClicked( ), 1
mouseDown( ), 1, 2
mouseDrag( ), 1
mouseDragged( ), 1
mouseEnter( ), 1
mouseEntered( ), 1
MouseEvent, 1, 2
mouseExit( ), 1
mouseExited( ), 1
MouseListener, 1
MouseMotionAdapter, 1
MouseMotionListener, 1
mouseMove( ), 1
mouseMoved( ), 1
mousePressed( ), 1
mouseReleased( ), 1
mouseUp( ), 1
multicast, 1
multicast events, 1
North, 1
paint( ), 1, 2
radio button, 1
removeActionListener( ), 1, 2
removeAdjustmentListener( ), 1
removeComponentListener( ), 1
removeContainerListener( ), 1
removeFocusListener( ), 1
removeItemListener( ), 1
removeKeyListener( ), 1
removeMouseListener( ), 1
removeMouseMotionListener( ), 1
removeTextListener( ), 1
removeWindowListener( ), 1
requestFocus( ), 1
setActionCommand( ), 1
setAlignment( ), 1
setCheckboxGroup( ), 1
setContents( ), 1
setDirectory( ), 1
setEditable( ), 1
setFile( ), 1
setLayout( ), 1
setText( ), 1
show( ), 1
showStatus( ), 1
South, 1
standalone windowed application, 1
StringSelection, 1
super.action( ), 1
system clipboard, 1
target of an event, 1
TextArea, 1, 2
TextArea, Java 1.1, 1
TextComponent, 1
TextComponent, Java 1.1, 1
TextEvent, 1, 2
TextField, 1
TextField, Java 1.1, 1
TextListener, 1
textValueChanged( ), 1
TooManyListenersException, 1, 2
Transferable, 1
unicast, 1
unicast events, 1
Web browser window status line, 1
West, 1
windowActivated( ), 1
WindowAdapter, 1
windowClosed( ), 1
windowClosing( ), 1
windowDeactivated( ), 1
windowDeiconified( ), 1
windowed applications, 1
WindowEvent, 1, 2, 3
windowIconified( ), 1
WindowListener, 1
windowOpened( ), 1
WINDOW_CLOSING, 1
WINDOW_DESTROY, 1
B

bag, 1
base
types, 1
base 16, 1
base 8, 1
base class, 1, 2, 3
abstract base class, 1
base-class interface, 1
constructor, 1
constructors and exceptions, 1
initialization, 1
Basic
Microsoft Visual Basic, 1
basic concepts of object-oriented programming (OOP), 1
BASIC language, 1
BasicArrowButton, 1
beanbox Bean testing tool, 1
BeanInfo
custom BeanInfo, 1
Beans
and Borland’s Delphi, 1
and Microsoft’s Visual Basic, 1
and multithreading, 1
application builder, 1
beanbox Bean testing tool, 1
bound properties, 1
component, 1
constrained properties, 1
custom BeanInfo, 1
custom property editor, 1
custom property sheet, 1
events, 1
EventSetDescriptors, 1
FeatureDescriptor, 1
getBeanInfo( ), 1
getEventSetDescriptors( ), 1
getMethodDescriptors( ), 1
getName( ), 1
getPropertyDescriptors( ), 1
getPropertyType( ), 1
getReadMethod( ), 1
getWriteMethod( ), 1
indexed property, 1
Introspector, 1
JAR files for packaging, 1
manifest file, 1
Method, 1
MethodDescriptors, 1
naming convention, 1
properties, 1
PropertyChangeEvent, 1
PropertyDescriptors, 1
ProptertyVetoException, 1
reflection, 1, 2
Serializable, 1
visual programming, 1
Beck, Kent, 1
Bill Joy, 1
binary
numbers, 1
operators, 1
binary numbers, printing, 1
binarySearch( ), 1
bind( ), 1
binding
dynamic binding, 1
dynamic, late, or run-time binding, 1
early, 1
late, 1
late binding, 1
method call binding, 1
run-time binding, 1
BitSet, 1
bitwise
AND, 1
AND operator (&), 1
EXCLUSIVE OR XOR (^), 1
NOT ~, 1
operators, 1
OR, 1
OR operator (|), 1
bitwise copy, 1
blank final, 1
blocking
and available( ), 1
and threads, 1
on IO, 1
Booch, Grady, 1
book
errors, reporting, 1
updates of the book, 1
Boolean, 1
algebra, 1
and casting, 1
vs. C and C++, 1
BorderLayout, 1
Borland, 1
Delphi, 1
bound properties, 1
bounds checking, array, 1
BoxLayout, 1
break keyword, 1
browser
class browser, 1
BufferedInputStream, 1, 2
BufferedOutputStream, 1, 2
BufferedReader, 1, 2
BufferedWriter, 1
business objects/logic, 1
button, 1, 2
creating your own, 1
radio button, 1
ButtonGroup, 1
ByteArrayInputStream, 1
ByteArrayOutputStream, 1
C

C++, 1
copy constructor, 1
Standard Container Library aka STL, 1
strategies for transition to, 1
templates, 1
vector class, vs. array and ArrayList, 1
why it succeeds, 1
C/C++, interfacing with, 1
callback, 1, 2
callbacks
and inner classes, 1
Canvas, 1, 2
capacity, of a HashMap or HashSet, 1
capitalization
Java capitalization style source-code checking tool, 1
of package names, 1
CardLayout, 1
case statement, 1
cast, 1, 2, 3
and containers, 1
and primitive types, 1
from float or double to integral, truncation, 1
operators, 1
catch
catching an exception, 1
catching any exception, 1
keyword, 1
CD ROM for book, 1
CGI
Common-Gateway Interface, 1
change
vector of change, 1
CharArrayReader, 1
CharArrayWriter, 1
Checkbox, 1, 2
Java 1.1, 1
CheckboxGroup, 1
CheckboxMenuItem, 1
Java 1.1, 1
CheckedInputStream, 1
CheckedOutputStream, 1
Checksum, 1
Choice, 1
Java 1.1, 1
class, 1, 2, 3
abstract class, 1
access, 1
anonymous inner class, 1, 2, 3
anonymous inner class and constructors, 1
base class, 1, 2, 3
browser, 1
class hierarchies and exception handling, 1
class literal, 1, 2
Class object, 1, 2, 3
creators, 1
defining the interface, 1
derived class, 1
equivalence, and instanceof/isInstance( ), 1
final classes, 1
forName( ), 1, 2
getClass( ), 1
getConstructors( ), 1
getInterfaces( ), 1
getMethods( ), 1
getName( ), 1
getSuperclass( ), 1
inheritance diagrams, 1
inheriting from an abstract class, 1
inheriting from inner classes, 1
initialization & class loading, 1
initialization of data members, 1
initializing members at point of definition, 1
initializing the base class, 1
inner class, 1, 2
inner class nesting within any arbitrary scope, 1
inner classes, 1
inner classes & access rights, 1
inner classes and overriding, 1
inner classes and super, 1
inner classes and the AWT, 1
inner classes and upcasting, 1
inner classes in methods & scopes, 1
inner classes, identifiers and .class files, 1
instance of, 1
intializing the derived class, 1
isInstance, 1
isInterface( ), 1
keyword, 1
loading, 1
member initialization, 1
newInstance( ), 1
order of initialization, 1
printInfo( ), 1
private inner classes, 1
public class, and compilation units, 1
read-only classes, 1
referring to the outer class object in an inner class, 1
RTTI using the Class object, 1
static inner classes, 1
style of creating classes, 1
subobject, 1
Class object, 1
class-responsibility-collaboration (CRC) cards, 1
ClassCastException, 1, 2
classpath, 1, 2
and rmic, 1
cleanup
and garbage collector, 1
performing, 1
with finally, 1
cleanup, guaranteeing with finalize( ), 1
client programmer, 1
vs. library creator, 1
client, network, 1
clipboard
system clipboard, 1
clone( ), 1
and composition, 1
and inheritance, 1
Object.clone( ), 1
removing/turning off clonability, 1
super.clone( ), 1, 2
supporting cloning in derived classes, 1
Cloneable interface, 1
CloneNotSupportedException, 1
close( ), 1
closure, and inner classes, 1
code
calling non-Java code, 1
coding standards, 1, 2
organization, 1
re-use, 1
codebase, 1
Collection, 1
collection class, 1
Collections, 1
Collections.enumeration( ), 1
Collections.fill( ), 1
Collections.reverseOrder(), 1
collision
name, 1
collisions, during hashing, 1
colors
desktop colors, 1
combo box, 1
comma operator, 1, 2
comments
and embedded documentation, 1
common interface, 1
common pitfalls when using operators, 1
Common-Gateway Interface (CGI), 1
Comparable, 1, 2
Comparator, 1, 2
compareTo( ), in java.lang.Comparable, 1
comparing arrays, 1
compilation unit, 1
compile-time constant, 1
compiling a Java program, 1
Component, 1, 2
component, and Java Beans, 1
ComponentAdapter, 1
componentAdded( ), 1
ComponentEvent, 1, 2
componentHidden( ), 1
ComponentListener, 1
componentMoved( ), 1
componentRemoved( ), 1
componentResized( ), 1
componentShown( ), 1
composition, 1, 2
and cloning, 1
and design, 1
and dynamic behavior change, 1
choosing composition vs. inheritance, 1
combining composition & inheritance, 1
vs. inheritance, 1, 2
compression
Java 1.1 compression library, 1
concept, high, 1
ConcurrentModificationException, 1
conditional operator, 1
conference, Software Development Conference, 1
console input, 1
const, in C++, 1
constant
compile-time constant, 1
folding, 1
groups of constant values, 1
implicit constants, and String, 1
constrained properties, 1
constructor, 1, 2
and anonymous inner classes, 1
and exception handling, 1
and exceptions, 1
and finally, 1
and overloading, 1
and polymorphism, 1
arguments, 1
base-class constructor, 1
base-class constructors and exceptions, 1
behavior of polymorphic methods inside constructors, 1
C++ copy constructor, 1
calling base-class constructors with arguments, 1
calling from other constructors, 1
default, 1
default constructors, 1
for reflection, 1
initialization during inheritance and composition, 1
name, 1
no-arg constructors, 1
order of constructor calls with inheritance, 1
return value, 1
static construction clause, 1
synthesized default constructor access, 1
consulting & mentoring provided by Bruce Eckel , 1
consume( ), 1
Container, 1
class, 1, 2
of primitives, 1
container classes, utilities for, 1
ContainerAdapter, 1
ContainerEvent, 1, 2
ContainerListener, 1
continue keyword, 1
control
access, 1
control framework, and inner classes, 1
controlling access, 1
conversion
automatic, 1
narrowing conversion, 1, 2
widening conversion, 1
copy
deep copy, 1
shallow copy, 1
copying an array, 1
CORBA, 1
costs, startup, 1
coupling, 1
CRC, class-responsibility-collaboration cards, 1
CRC32, 1
createStatement( ), 1, 2
critical section, and synchronized block, 1
D

daemon threads, 1
data
final , 1
primitive data types and use with operators, 1
static initialization, 1
data type
equivalence to class, 1
database
flat-file database, 1
Java DataBase Connectivity (JDBC), 1
relational database, 1
URL, 1
DatabaseMetaData, 1
DataFlavor, 1
Datagram, 1
User Datagram Protocol (UDP), 1
DataInput, 1
DataInputStream, 1, 2, 3, 4, 5, 6
DataOutput, 1
DataOutputStream, 1, 2, 3
dead, Thread, 1
deadlock, multithreading, 1, 2
death condition, and finalize( ), 1
decorator design pattern, 1
decoupling
via polymorphism, 1
decoupling through polymorphism, 1
decrement operator, 1
deep copy, 1, 2
and Vector, 1
using serialization to perform deep copying, 1
default constructor, 1, 2
synthesizing a default constructor, 1
default constructor, access the same as the class, 1
default keyword, in a switch statement, 1
default package, 1
DefaultMutableTreeNode, 1
defaultReadObject( ), 1
DefaultTreeModel, 1
defaultWriteObject( ), 1
DeflaterOutputStream, 1
Delphi, from Borland, 1
Demarco, Tom, 1
dequeue, 1
derived
derived class, 1
derived class, initializing, 1
types, 1
design, 1
adding more methods to a design, 1
analysis and design, object-oriented, 1
and composition, 1
and inheritance, 1
and mistakes, 1
five stages of object design, 1
library design, 1
of object hierarchies, 1
patterns, 1, 2
design patterns, 1
decorator, 1
singleton, 1
desktop colors, 1
destroy( ), 1, 2
destructor, 1, 2, 3
Java doesn’t have one, 1
development, incremental, 1
diagram
inheritance, 1
use case, 1
diagram, class inheritance diagrams, 1
Dialog, 1
Java 1.1, 1
dialog box, 1
dictionary, 1
directory
and packages, 1
creating directories and paths, 1
lister, 1
dispatchEvent( ), 1
dispatching messages, AWT, 1
dispose( ), 1
division, 1
do-while, 1
documentation
comments & embedded documentation, 1
Domain Name System (DNS), 1
dotted quad, 1
double, literal value marker (D), 1
downcast, 1, 2, 3
type-safe downcast in run-time type identification, 1
drop-down list, 1
dynamic
behavior change with composition, 1
binding, 1, 2
dynamic aggregate initialization syntax for arrays, 1
E

early binding, 1, 2
East, 1
efficiency
and arrays, 1
and final, 1
and threads, 1
when using the synchronized keyword, 1
elegance, in programming, 1
else keyword, 1
encapsulation, 1
enum, groups of constant values in C & C++, 1
Enumeration, 1
equals( )
and hashed data structures, 1
equals( ), 1, 2, 3
overriding for HashMap, 1
vs. ==, 1
equivalence
==, 1
object equivalence, 1
error
handling with exceptions, 1
recovery, 1
reporting errors in book, 1
event
Event object, AWT, 1
event-driven programming, 1
event-driven system, 1
Java Beans, 1
listener, 1
multicast, 1
multicast event and Java Beans, 1
target, 1
unicast, 1
event listener
order of execution, 1
EventSetDescriptors, 1
evolution, in program development, 1
exception
and base-class constructors, 1
and constructors, 1
and inheritance, 1, 2
catching an exception, 1
catching any exception, 1
changing the point of origin of the exception, 1
class hierarchies, 1
constructors, 1
creating your own, 1
design issues, 1
Error class, 1
Exception class, 1
exception handler, 1
exception handling, 1
exception matching, 1
FileNotFoundException, 1
fillInStackTrace( ), 1
finally, 1
guarded region, 1
handler, 1
handling, 1
losing an exception, pitfall, 1
NullPointerException, 1
printStackTrace( ), 1
re-throwing an exception, 1
restrictions, 1
RuntimeException, 1
specification, 1
termination vs. resumption, 1
Throwable, 1
throwing an exception, 1, 2
try, 1
try block, 1
typical uses of exceptions, 1
exceptional condition, 1
exceptions
and JNI , 1
executeQuery( ), 1, 2
Exponential notation, 1
extending a class during inheritance, 1
extends, 1, 2, 3
and interface, 1
keyword, 1
extensible
program, 1
extension
pure inheritance vs. extension, 1
extension, sign, 1
extension, zero, 1
Externalizable, 1
alternative approach to using, 1
Extreme Programming (XP), 1, 2
F

fail fast containers, 1
false, 1
FeatureDescriptor, 1
Field, for reflection, 1
fields, initializing fields in interfaces, 1
FIFO, 1
File, 1, 2, 3
characteristics of files, 1
class, 1
data file output shorthand, 1
File.list( ), 1
formatted file output shorthand, 1
input shorthand, 1
JAR file, 1
File Transfer Protocol (FTP), 1
FileDescriptor, 1
FileDialog, 1
FileInputStream, 1, 2
FilenameFilter, 1, 2
FileNotFoundException, 1
FileOutputStream, 1, 2
FileReader, 1, 2
FileWriter, 1
fillInStackTrace( ), 1
FilterInputStream, 1
FilterOutputStream, 1
FilterReader, 1
FilterWriter, 1
final, 1
and efficiency, 1
and private, 1
and static, 1
argument, 1, 2
blank finals, 1
classes, 1
data, 1
keyword, 1
method, 1
methods, 1, 2
static primitives, 1
with object references, 1
finalize( ), 1, 2
and inheritance, 1
and super, 1
calling directly, 1
order of finalization of objects, 1
finally, 1, 2
and constructors, 1
keyword, 1
pitfall, 1
finding .class files during loading, 1
flat-file database, 1
flavor, clipboard, 1
float, literal value marker(F), 1
floating point
true and false, 1
FlowLayout, 1
Focus traversal, 1
FocusAdapter, 1
FocusEvent, 1, 2
focusGained( ), 1
FocusListener, 1
focusLost( ), 1
folding, constant, 1
for keyword, 1
forName( ), 1, 2
FORTRAN, 1
forward referencing, 1
Fowler, Martin, 1, 2, 3
Frame, 1, 2
framework
application framework, 1
control framework and inner classes, 1
friendly, 1, 2
and interface, 1
and protected, 1
less accessible than protected, 1
FTP
File Transfer Protocol (FTP), 1
function
member function, 1
overriding, 1
functor, 1
G

garbage collection, 1, 2, 3
and cleanup, 1
and native method execution, 1
forcing finalization, 1
how the collector works, 1
order of object reclamation, 1
reachable objects, 1
setting references to null to allow cleanup, 1
generator, 1
generator object, to fill arrays and containers, 1
get( ), ArrayList, 1, 2
get( ), HashMap, 1
getAppletContext( ), 1
getBeanInfo( ), 1
getClass( ), 1, 2
getConstructor( ), 1
getConstructors( ), 1
getContents( ), 1
getDirectory( ), 1
getEventSetDescriptors( ), 1
getFile( ), 1
getFloat( ), 1, 2
getInputStream( ), 1
getInt( ), 1, 2
getInterfaces( ), 1
getMethodDescriptors( ), 1
getMethods( ), 1
getModel( ), 1
getName( ), 1, 2
getOutputStream( ), 1
getPriority( ), 1
getPropertyDescriptors( ), 1
getPropertyType( ), 1
getReadMethod( ), 1
getSelectedItems( ), 1
getState( ), 1
getString( ), 1, 2
getSuperclass( ), 1
getText( ), 1
getTransferData( ), 1
getTransferDataFlavors( ), 1
getWriteMethod( ), 1
Glass, Robert, 1
gotFocus( ), 1
goto
lack of goto in Java, 1
graphical user interface (GUI), 1, 2
graphics, 1
greater than (>), 1
greater than or equal to (>=), 1
GridBagLayout, 1
GridLayout, 1, 2
guarded region, in exception handling, 1
GUI
builders, 1
graphical user interface, 1, 2
guidelines
object development, 1
guidelines, coding standards, 1
GZIPInputStream, 1
GZIPOutputStream, 1
H

handleEvent( ), 1, 2
handler, exception, 1
hardware devices, interfacing with, 1
has-a, 1
has-a relationship, composition, 1
hash code, 1, 2
hash function, 1
hashCode( )
and hashed data structures, 1
issues when writing, 1
hashCode( ), 1, 2
overriding for HashMap, 1
hashing, 1
external chaining, 1
perfect hashing function, 1
HashMap, 1, 2
HashSet, 1, 2
Hashtable, 1, 2, 3, 4
used with Vector, 1
hasNext( ), Iterator, 1
Hexadecimal, 1
hiding
implementation, 1
hiding, implementation, 1
high concept, 1
HTML, 1
name, 1
param, 1
value, 1
I

Icon, 1
idltojava, 1
if-else statement, 1, 2
IllegalMonitorStateException, 1
ImageIcon, 1
immutable objects, 1
implementation, 1
and interface, 1, 2
and interface, separating, 1
and interface, separation, 1
hiding, 1, 2, 3
implements keyword, 1
import keyword, 1
increment operator, 1
incremental development, 1
indexed property, 1
indexing operator [ ], 1
indexOf( )
String, 1, 2
InflaterInputStream, 1
inheritance, 1, 2, 3, 4, 5
and cloning, 1
and final, 1
and finalize( ), 1
and synchronized, 1
choosing composition vs. inheritance, 1
class inheritance diagrams, 1
combining composition & inheritance, 1
designing with inheritance, 1
diagram, 1
extending a class during, 1
extending interfaces with inheritance, 1
from an abstract class, 1
from inner classes, 1
inheritance and method overloading vs. overriding, 1
initialization with inheritance, 1
multiple inheritance in C++ and Java, 1
pure inheritance vs. extension, 1
specialization, 1
vs composition, 1
vs. composition, 1
init( ), 1, 2
initial capacity, of a HashMap or HashSet, 1
initialization
and class loading, 1
array initialization, 1
base class, 1
class member, 1
constructor initialization during inheritance and composition, 1
initializing class members at point of definition, 1
initializing with the constructor, 1
instance initialization, 1, 2
member initializers, 1
non-static instance initialization, 1
of class data members, 1
of method variables, 1
order of initialization, 1, 2
static, 1
with inheritance, 1
inizialization
lazy, 1
inline method calls, 1
inner class, 1, 2, 3
inner class
access rights, 1
and overriding, 1
and super, 1
and control frameworks, 1
and the AWT, 1
and upcasting, 1
anonymous inner class, 1, 2
anonymous inner class and constructors, 1
anonymous, and table-driven code, 1
callback, 1
closure, 1
hidden reference to the object of the enclosing class, 1
identifiers and .class files, 1
in methods & scopes, 1
inheriting from inner classes, 1
nesting within any arbitrary scope, 1
private, 1
private inner classes, 1
referring to the outer class object, 1
static inner classes, 1
input
console input, 1
file input shorthand, 1
InputStream, 1, 2
InputStreamReader, 1, 2, 3
insertNodeInto( ), 1
instance
instance initialization , 1
non-static instance initialization, 1
instance of a class, 1
instanceof
dynamic instanceof, 1
keyword, 1
Integer
parseInt( ), 1
Integer wrapper class, 1
interface
and implementation, separation, 1
and inheritance, 1
base-class interface, 1
Cloneable interface used as a flag, 1
common interface, 1
defining the class, 1
for an object, 1
graphical user interface (GUI), 1, 2
implementation, separation of, 1
initializing fields in interfaces, 1
keyword, 1
Runnable, 1
upcasting to an interface, 1
user, 1
vs. abstract, 1
vs. implemenation, 1
interfaces
name collisions when combining interfaces, 1
interfacing with hardware devices, 1
internationalization, in IO library, 1
Internet
Internet Protocol, 1
Internet Service Provider (ISP), 1
interrupt( ), 1
InterruptedException, 1
intranet, 1
Introspector, 1
IO
and threads, blocking, 1
available( ), 1
blocking on IO, 1
blocking, and available( ), 1
BufferedInputStream, 1, 2
BufferedOutputStream, 1, 2
BufferedReader, 1, 2
BufferedWriter, 1
ByteArrayInputStream, 1
ByteArrayOutputStream, 1
characteristics of files, 1
CharArrayReader, 1
CharArrayWriter, 1
CheckedInputStream, 1
CheckedOutputStream, 1
close( ), 1
console input, 1
controlling the process of serialization, 1
data file output shorthand, 1
DataInput, 1
DataInputStream, 1, 2, 3, 4, 5, 6
DataOutput, 1
DataOutputStream, 1, 2, 3
DeflaterOutputStream, 1
deprecated, 1
directory lister, 1
directory, creating directories and paths, 1
Externalizable, 1
File, 1, 2, 3
File class, 1
file input shorthand, 1
File.list( ), 1
FileDescriptor, 1
FileInputStream, 1, 2
FilenameFilter, 1, 2
FileOutputStream, 1, 2
FileReader, 1, 2
FileWriter, 1
FilterInputStream, 1
FilterOutputStream, 1
FilterReader, 1
FilterWriter, 1
formatted file output shorthand, 1
from standard input, 1
GZIPInputStream, 1
GZIPOutputStream, 1
InflaterInputStream, 1
input, 1
InputStream, 1, 2
InputStreamReader, 1, 2, 3
internationalization, 1
Java 1.1 compression library, 1
library, 1
lightweight persistence, 1
LineNumberInputStream, 1, 2
LineNumberReader, 1
mark( ), 1
mkdirs( ), 1
nextToken( ), 1
ObjectOutputStream, 1
output, 1
OutputStream, 1, 2, 3
OutputStreamWriter, 1, 2, 3
pipe, 1
piped stream, 1
PipedInputStream, 1, 2
PipedOutputStream, 1, 2, 3
PipedReader, 1
PipedWriter, 1
PrintStream, 1, 2, 3
PrintWriter, 1, 2
pushBack( ), 1
PushbackInputStream, 1
PushBackReader, 1
RandomAccessFile, 1, 2, 3
read( ), 1
readChar( ), 1
readDouble( ), 1
Reader, 1, 2, 3
readExternal( ), 1
readLine( ), 1, 2, 3, 4, 5, 6
readObject( ), 1
redirecting standard IO, 1
renameTo( ), 1
reset( ), 1
seek( ), 1, 2
SequenceInputStream, 1, 2
Serializable, 1
setErr(PrintStream), 1
setIn(InputStream), 1
setOut(PrintStream), 1
StreamTokenizer, 1, 2, 3, 4
StringBuffer, 1
StringBufferInputStream, 1, 2
StringReader, 1
StringWriter, 1
System.err, 1
System.in, 1, 2
System.out, 1
transient, 1
typical IO configurations, 1
Unicode, 1
write( ), 1
writeBytes( ), 1
writeChars( ), 1
writeDouble( ), 1
writeExternal( ), 1
writeObject( ), 1
Writer, 1, 2, 3
ZipEntry, 1
ZipInputStream, 1
ZipOutputStream, 1
IP (Internet Protocol), 1
is-a, 1
relationship, inheritance, 1
relationship, inheritance & upcasting, 1
vs. is-like-a relationships, 1
is-like-a, 1
isDaemon( ), 1
isDataFlavorSupported( ), 1
isFocusTraversable( ), 1
isInstance, 1
isInterface( ), 1
ISP (Internet Service Provider), 1
ItemEvent, 1, 2, 3
ItemListener, 1, 2
itemStateChanged( ), 1
iteration, in program development, 1
iterator, 1, 2, 3, 4
hasNext( ), 1
next( ), 1
iterator( ), 1
J

Jacobsen, Ivar, 1
JAR, 1
archive tag, for HTML and JAR files, 1
file, 1, 2
jar files and classpath, 1
Java 1.1 JAR utility, 1
packaging applets to optimize loading, 1
Java, 1, 2
and pointers, 1
and set-top boxes, 1
capitalization style source-code checking tool, 1
compiling and running a program, 1
containers library, 1, 2
public Java seminars, 1
versions, 1
Java 1.0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
Java 1.1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52
and Swing, 1
IO streams, 1
JAR utility, 1
reflection, 1, 2
Java 2, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
Swing library, 1
Java Beans
see Beans, 1
Java Foundation Classes (JFC/Swing), 1
Java operators, 1
Java Virtual Machine, 1
javah, 1
JButton, 1
JCheckbox, 1
JColorChooser, 1
JComboBox, 1
JComponent, 1
JDBC
createStatement( ), 1, 2
database URL, 1
DatabaseMetaData, 1
executeQuery( ), 1, 2
flat-file database, 1
getFloat( ), 1, 2
getInt( ), 1, 2
getString( ), 1, 2
Java DataBase Connectivity, 1
join, 1
relational database, 1
ResultSet, 1, 2
SQL stored procedures, 1
Statement, 1, 2
Structured Query Language (SQL), 1
JDK
downloading and installing, 1
JFC
Java Foundation Classes (JFC/Swing), 1
JFileChooser, 1
JFrame, 1
JHTMLPane, 1
JInternalFrame, 1
JIT
Just-In Time compilers, 1
JLabel, 1
JLabels, 1
JLayeredPane, 1
JList, 1
JMenu, 1
JMenuItem, 1, 2
JMenuItems, 1
JNI functions, 1
JNICALL, 1
JNIEnv, 1
JNIEXPORT, 1
join, 1
JOptionPane, 1
JPasswordField, 1
JPopupMenu, 1
JProgressBar, 1
JRadioButton, 1
JScrollPane, 1, 2, 3
JSlider, 1
JTextField, 1
JTextPane, 1
JToggleButton, 1
JToolbar, 1
JTree, 1, 2
JVM (Java Virtual Machine), 1
K

KeyAdapter, 1
keyboard navigation, and Swing, 1
keyDown( ), 1
KeyEvent, 1, 2
KeyListener, 1
keyPressed( ), 1
keyReleased( ), 1
keySet( ), 1
keyTyped( ), 1
keyUp( ), 1
keywords
class, 1, 2
Koenig, Andrew, 1
L

label, 1, 2
labeled break, 1
labeled continue, 1
late binding, 1, 2, 3
layout
controlling layout, 1
layout manager, 1
lazy inizialization, 1
left-shift operator (<<), 1
length, array member, 1
length, for arrays, 1
less than (<), 1
less than or equal to (<=), 1
lexicographic vs. alphabetic sorting, 1
library
creator, vs. client programmer, 1
design, 1
use, 1
LIFO, 1
lightweight
Swing components, 1
lightweight persistence, 1
LineNumberInputStream, 1, 2
LineNumberReader, 1
linked list, 1
LinkedList, 1, 2, 3
List, 1, 2, 3, 4, 5
boxes, 1
drop-down list, 1
Java 1.1, 1
sorting and searching, 1
list box, 1
listener adapters, 1
listener classes, 1
Lister, Timothy, 1
ListIterator, 1
literal
class literal, 1, 2
double, 1
float, 1
long, 1
values, 1
load factor, of a HashMap or HashSet, 1
loading
.class files, 1
initialization & class loading, 1
loding a class, 1
local loopback IP address, 1
localhost, 1
lock, for multithreading, 1
logarithms
natural logarithms, 1
logical
AND, 1
operator and short-circuiting, 1
operators, 1
OR, 1
long, literal value marker (L), 1
lostFocus( ), 1
lvalue, 1
M

main( ), 1
maintenance, program, 1
management obstacles, 1
manifest file, for JAR files, 1, 2
Map, 1, 2, 3, 4, 5, 6
Map.Entry, 1
mark( ), 1
Math.random( ), 1
values produced by, 1
mathematical operators, 1
max( ), 1
MDI, 1
member
member function, 1
object, 1
member initializers, 1
memory exhaustion, solution via References, 1
mentoring
and training, 1, 2
Menu, 1
Java 1.1, 1
popup menu, 1
Swing, 1
menu shortcuts, 1
MenuBar, 1, 2
MenuComponent, 1
MenuItem, 1, 2
Java 1.1, 1
message box, in Swing, 1
message, sending, 1
meta-class, 1
Method, 1
adding more methods to a design, 1
aliasing during a method call, 1
aliasing during method calls, 1
behavior of polymorphic methods inside constructors, 1
distinguishing overloaded methods, 1
final, 1, 2
final methods, 1
for reflection, 1
inline method calls, 1
inner classes in methods & scopes, 1
lookup tool, 1
method call binding, 1
overloading, 1
passing a reference into a method, 1
polymorphic method call, 1
private, 1
protected methods, 1
recursive, 1
static, 1
synchronized method and blocking, 1
initialization of method variables, 1
MethodDescriptors, 1
methodology, analysis and design, 1
Meyers, Scott, 1
Microsoft, 1
Visual Basic, 1
min( ), 1
mission statement, 1
mistakes, and design, 1
mkdirs( ), 1
modulus, 1
monitor, for multithreading, 1
MouseAdapter, 1
mouseClicked( ), 1
mouseDown( ), 1, 2
mouseDrag( ), 1
mouseDragged( ), 1
mouseEnter( ), 1
mouseEntered( ), 1
MouseEvent, 1, 2
mouseExit( ), 1
mouseExited( ), 1
MouseListener, 1
MouseMotionAdapter, 1
MouseMotionListener, 1
mouseMove( ), 1
mouseMoved( ), 1
mousePressed( ), 1
mouseReleased( ), 1
mouseUp( ), 1
multi-tiered systems, 1
multicast, 1
event, and Java Beans, 1
multicast events, 1
multidimensional arrays, 1
Multimedia CD ROM for book, 1
multiparadigm programming, 1
multiple inheritance, in C++ and Java, 1
multiple-document interface, 1
multiplication, 1
multitasking, 1
multithreading, 1, 2
and containers, 1
and Java Beans, 1
blocking, 1
deciding what methods to synchronize, 1
drawbacks, 1
Runnable, 1
when to use it, 1
N

name, 1
clash, 1
collisions, 1
creating unique package names, 1
spaces, 1
name collisions when combining interfaces, 1
name, HTML keyword, 1
Naming
bind( ), 1
rebind( ), 1
unbind( ), 1
narrowing conversion, 1, 2, 3
native method interface (NMI) in Java 1.0, 1
natural logarithms, 1
network programming, 1
accept( ), 1
client, 1
Common-Gateway Interface (CGI), 1
datagrams, 1
dedicated connection, 1
displaying a Web page from within an applet, 1
DNS (Domain Name System), 1
dotted quad, 1
getInputStream( ), 1
getOutputStream( ), 1
HTML, 1
identifying machines, 1
Internet Protocol (IP), 1
Java DataBase Connectivity (JDBC), 1
local loopback IP address, 1
localhost, 1
multithreading, 1
port, 1
reliable protocol, 1
server, 1
serving multiple clients, 1
showDocument( ), 1
Socket, 1
stream-based sockets, 1
testing programs without a network, 1
Transmission Control Protocol (TCP), 1
unreliable protocol, 1
URL, 1
User Datagram Protocol (UDP), 1
new operator, 1
and primitives, array, 1
newInstance( ), 1
reflection, 1
next( ), Iterator, 1
nextToken( ), 1
NMI
Java 1.0 native method interface, 1
no-arg
constructors, 1
non-Java code, calling, 1
North, 1
NOT
logical (!), 1
not equivalent (!=), 1
notify( ), 1
notifyAll( ), 1
notifyListeners( ), 1
null, 1, 2
garbage collection, allowing cleanup, 1
NullPointerException, 1
numbers, binary, 1
O

object, 1, 2
aliasing, 1
array of Object, 1
arrays are first-class objects, 1
assigning objects by copying references, 1
assignment and reference copying, 1
business object/logic, 1
Class object, 1, 2, 3
clone( ), 1, 2
creation, 1
equals( ) method, 1
equivalence, 1
equivalence vs reference equivalence, 1
final, 1
five stages of object design, 1
getClass( ), 1
guidelines for object development, 1
hashCode( ), 1
immutable objects, 1
interface to, 1
lock, for multithreading, 1
member, 1
object-oriented programming, 1
order of finalization of objects, 1
process of creation, 1
reference equivalence vs. object equivalence, 1
serialization, 1, 2
standard root class, default inheritance from, 1
web of objects, 1, 2
object-oriented
analysis and design, 1
basic concepts of object-oriented programming (OOP), 1
ObjectOutputStream, 1
obstacles, management, 1
Octal, 1
ODBC, 1
OMG, 1
ones complement operator, 1
OOP, 1
analysis and design, 1
basic characteristics, 1
basic concepts of object-oriented programming, 1
protocol, 1
Simula programming language, 1
substitutability, 1
operator, 1
+ and += overloading for String, 1
+, for String, 1
== and !=, 1
binary, 1
bitwise, 1
casting, 1
comma, 1
comma operator, 1
common pitfalls, 1
indexing operator [ ], 1
logical, 1
logical operators and short-circuiting, 1
ones-complement, 1
operator overloading for String, 1
overloading, 1
precedence, 1
precedence mnemonic, 1
relational, 1
shift, 1
unary, 1, 2
ternary, 1
optional methods, in the Java 2 containers, 1
OR, 1
(||), 1
order
of constructor calls with inheritance, 1
of finalization of objects, 1
of initialization, 1, 2, 3
organization, code, 1
output
data file output shorthand, 1
formatted file output shorthand, 1
OutputStream, 1, 2, 3
OutputStreamWriter, 1, 2, 3
overflow
and primitive types, 1
overloading
and constructors, 1
distinguishing overloaded methods, 1
lack of name hiding during inheritance, 1
method overloading, 1
on return values, 1
operator + and += overloading for String, 1
operator overloading, 1
operator overloading for String, 1
overloading vs. overriding, 1
vs. overriding, 1
overriding
and inner classes, 1
function, 1
overloading vs. overriding, 1
vs. overloading, 1
P

package, 1
access, and friendly, 1
and applets, 1
and directory structure, 1
creating unique package names, 1
default package, 1
names, capitalization, 1
visibility, friendly, 1
paint( ), 1, 2
pair programming, 1
paralysis, analysis, 1
param, HTML keyword, 1
parameter, applet, 1
parameterized type, 1
parseInt( ), 1
pass
pass by value, 1
passing a reference into a method, 1
patterns, design, 1, 2
patterns, design patterns, 1
perfect hashing function, 1
performance
and final, 1
performance issues, 1
persistence, 1
lightweight persistence, 1
PhantomReference, 1
pipe, 1
piped stream, 1
PipedInputStream, 1, 2
PipedOutputStream, 1, 2, 3
PipedReader, 1
PipedWriter, 1
planning, software development, 1
Plauger, P.J., 1
pointer
Java exclusion of pointers, 1
pointers, and Java, 1
polymorphism, 1, 2, 3, 4, 5
and constructors, 1
behavior of polymorphic methods inside constructors, 1
popup menu, 1
port, 1
portability in C, C++ and Java, 1
precedence
operator precedence mnemonic, 1
prerequisites, for this book, 1
primitive
comparison, 1
containers of primitives, 1
data types, and use with operators, 1
dealing with the immutability of primitive wrapper classes, 1
final, 1
final static primitives, 1
initialization of class data members, 1
wrappers, 1
printInfo( ), 1
printing arrays, 1
println( ), 1
printStackTrace( ), 1, 2
PrintStream, 1, 2, 3
PrintWriter, 1, 2
priority
default priority for a Thread group, 1
thread, 1
private, 1, 2, 3, 4, 5, 6
illusion of overriding private methods, 1
inner class, 1
inner classes, 1
methods, 1
problem space, 1, 2
process, and threading, 1
program
maintenance, 1
programmer, client, 1
programming
basic concepts of object-oriented programming (OOP), 1
coding standards, 1
event-driven programming, 1
Extreme Programming (XP), 1, 2
in the large, 1
multiparadigm, 1
object-oriented, 1
pair, 1
progress bar, 1
promotion
of primitive types, 1
type promotion, 1
Properties, 1
property, 1
bound properties, 1
constrained properties, 1
custom property editor, 1
custom property sheet, 1
indexed property, 1
PropertyChangeEvent, 1
PropertyDescriptors, 1
ProptertyVetoException, 1
protected, 1, 2, 3, 4, 5
and friendly, 1
is also friendly, 1
more accessible than friendly, 1
use in clone( ), 1
protocol, 1
unreliable protocol, 1
prototyping
rapid, 1
public, 1, 2, 3, 4
and interface, 1
class, and compilation units, 1
pure
substitution, 1
pure inheritance, vs. extension, 1
pure substitution, 1
pushBack( ), 1
PushbackInputStream, 1
PushBackReader, 1
put( ), HashMap, 1
Python, 1, 2
Q

queue, 1, 2
R

RAD (Rapid Application Development), 1
radio button, 1
random number generator, values produced by, 1
random( ), 1
RandomAccessFile, 1, 2, 3
rapid prototyping, 1
re-throwing an exception, 1
reachable objects and garbage collection, 1
read( ), 1
readChar( ), 1
readDouble( ), 1
Reader, 1, 2, 3, 4
readExternal( ), 1
reading from standard input, 1
readLine( ), 1, 2, 3, 4, 5, 6
readObject( ), 1
with Serializable , 1
rebind( ), 1
recursion, unintended via toString(), 1
redirecting standard IO, 1
refactoring, 1
reference
assigning objects by copying references, 1
equivalence vs object equivalence, 1
final, 1
finding exact type of a base reference, 1
null, 1
reference equivalence vs. object equivalence, 1
Reference, from java.lang.ref, 1
referencing, forward referencing, 1
reflection, 1, 2, 3
and Beans, 1
difference between RTTI and reflection, 1
registry
remote object registry, 1
relational
database, 1
operators, 1
reliable protocol, 1
Remote Method Invocation (RMI), 1
RemoteException, 1
removeActionListener( ), 1, 2, 3
removeAdjustmentListener( ), 1
removeComponentListener( ), 1
removeContainerListener( ), 1
removeFocusListener( ), 1
removeItemListener( ), 1
removeKeyListener( ), 1
removeMouseListener( ), 1
removeMouseMotionListener( ), 1
removeTextListener( ), 1
removeWindowListener( ), 1
renameTo( ), 1
reporting errors in book, 1
request, in OOP, 1
requestFocus( ), 1
requirements analysis, 1
reset( ), 1
ResultSet, 1, 2
resume( ), 1, 2
and deadlocks, 1
deprecation in Java 2, 1
resumption, termination vs. resumption, exception handling, 1
return
an array, 1
constructor return value, 1
overloading on return value, 1
reusability, 1
reuse, 1
code reuse, 1
existing class libraries, 1
reusable code, 1
right-shift operator (>>), 1
RMI
AlreadyBoundException, 1
and CORBA, 1
bind( ), 1
localhost, 1
rebind( ), 1
Remote, 1
remote interface, 1
Remote Method Invocation, 1
remote object registry, 1
RemoteException, 1, 2
rmic, 1
rmic and classpath, 1
rmiregistry, 1
RMISecurityManager, 1
Serializable arguments, 1
skeleton, 1
stub, 1
TCP/IP, 1
unbind( ), 1
UnicastRemoteObject, 1
rmic, 1
rmiregistry, 1
RMISecurityManager, 1
rollover, 1
RTI
Class, 1
RTTI
and cloning, 1
cast, 1
Class object, 1
ClassCastException, 1
Constructor, 1, 2
difference between RTTI and reflection, 1
downcast, 1
Field, 1
getConstructor( ), 1
instanceof keyword, 1
isInstance, 1
meta-class, 1
Method, 1
newInstance( ), 1
reflection, 1
run-time type identification (RTTI), 1
type-safe downcast, 1
using the Class object, 1
Rumbaugh, James, 1
run-time binding, 1
polymorphism, 1
run-time type identification
(RTTI), 1
misuse, 1
shape example, 1
when to use it, 1
runFinalizersOnExit( ), 1, 2
Runnable, 1
interface, 1
Thread, 1
running a Java program, 1
RuntimeException, 1, 2
rvalue, 1
S

safety, and applet restrictions, 1
scenario, 1
scheduling, 1
scope
inner class nesting within any arbitrary scope , 1
inner classes in methods & scopes, 1
use case, 1
searching
sorting and searching Lists, 1
searching an array, 1
section, critical section and synchronized block, 1
seek( ), 1, 2
seminars
public Java seminars, 1
training, provided by Bruce Eckel, 1
sending a message, 1
separation of interface and implementation, 1, 2
SequenceInputStream, 1, 2
Serializable, 1, 2, 3, 4, 5
readObject( ), 1
writeObject( ), 1
serialization
and object storage, 1
and transient, 1
controlling the process of serialization, 1
defaultReadObject( ), 1
defaultWriteObject( ), 1
RMI arguments, 1
to perform deep copying, 1
Versioning, 1
server, 1
Set, 1, 2, 3, 4, 5
setActionCommand( ), 1
setAlignment( ), 1
setBorder( ), 1
setCheckboxGroup( ), 1
setContents( ), 1
setDaemon( ), 1
setDirectory( ), 1
setEditable( ), 1
setErr(PrintStream), 1
setFile( ), 1
setIcon( ), 1
setIn(InputStream), 1
setLayout( ), 1
setOut(PrintStream), 1
setPriority( ), 1
setText( ), 1
setToolTipText( ), 1
shallow copy, 1, 2
shape
example, 1, 2
example, and run-time type identification, 1
shift operators, 1
short-circuit, and logical operators, 1
shortcut, menu shortcuts, 1
show( ), 1
showConfirmDialog( ), 1
showDocument( ), 1
showMessageDialog( ), 1
showStatus( ), 1
shuffle( ), 1
side effect, 1, 2, 3, 4
sign extension, 1
signed two’s complement, 1
Simula programming language, 1
Simula-67, 1
singleton
design pattern, 1
size( ), ArrayList, 1
Size, of a HashMap or HashSet, 1
sizeof( )
lack of in Java, 1
skeleton, RMI, 1
sleep( ), 1, 2, 3, 4
slider, 1
Smalltalk, 1, 2
Socket, 1
sockets, stream-based, 1
SoftReference, 1
software
development methodology, 1
Software Development Conference, 1
solution space, 1
sorting, 1
and searching Lists, 1
source code copyright notice, 1
South, 1
space
problem, 1
solution, 1
specialization, 1
specification
system specification, 1
specification, exception, 1
specifier
access specifiers, 1, 2, 3
splitter control, 1
SQL
stored procedures, 1
Structured Query Language, 1
Stack, 1, 2
standard input
Reading from standard input, 1
standards
coding standards, 1, 2
start( ), 1, 2
startup costs, 1
Statement, 1, 2
mission, 1
static, 1
and final, 1
block, 1
clause, 1
construction clause, 1
data initialization, 1
final static primitives, 1
initialization, 1
inner classes, 1
keyword, 1
method, 1
synchronized static, 1
status line, Web browser , 1
STL
C++, 1
stop( ), 1, 2
and deadlocks, 1
deprecation in Java 2, 1
stored procedures in SQL, 1
stream-based sockets, 1
StreamTokenizer, 1, 2, 3, 4
String
automatic type conversion, 1
class methods, 1
concatenation with operator +, 1
immutability, 1
indexOf( ), 1, 2
lexicographic vs. alphabetic sorting, 1
methods, 1
Operator +, 1, 2
operator + and += overloading, 1
toString( ), 1, 2
StringBuffer, 1, 2
methods, 1
StringBufferInputStream, 1, 2
StringReader, 1
StringSelection, 1
StringTokenizer, 1
StringWriter, 1
stub, RMI, 1
style of creating classes, 1
subobject, 1, 2
substitutability, in OOP, 1
substitution
principle, 1
subtraction, 1
super, 1
and finalize( ), 1
and inner classes, 1
super keyword, 1
super.action( ), 1
super.clone( ), 1, 2, 3
superclass, 1
suspend( ), 1, 2
and deadlocks, 1
deprecation in Java 2, 1
Swing
AbstractButton, 1
BasicArrowButton, 1
BoxLayout, 1
ButtonGroup, 1
combo box, 1
DefaultMutableTreeNode, 1
DefaultTreeModel, 1
getModel( ), 1
Icon, 1
ImageIcon, 1
insertNodeInto( ), 1
Java Foundation Classes (JFC), 1
JButton, 1
JCheckbox, 1
JColorChooser, 1
JComboBox, 1
JComponent, 1
JFileChooser, 1
JFrame, 1
JHTMLPane, 1
JInternalFrame, 1
JLabel, 1
JLabels, 1
JLayeredPane, 1
JList, 1
JMenu, 1
JMenuItem, 1, 2
JMenuItems, 1
JOptionPane, 1
JPasswordField, 1
JPopupMenu, 1
JProgressBar, 1
JRadioButton, 1
JScrollPane, 1, 2, 3
JSlider, 1
JTextField, 1
JTextPane, 1
JToggleButton, 1
JToolbar, 1
JTree, 1, 2
keyboard navigation, 1
list box, 1
MDI, 1
Menus, 1
message box, 1
multiple-document interface, 1
popup menu, 1
progress bar, 1
rollover, 1
setBorder( ), 1
setIcon( ), 1
setToolTipText( ), 1
showConfirmDialog( ), 1
showMessageDialog( ), 1
slider, 1
splitter control, 1
table, 1
TitledBorder, 1
tool tip, 1
toolbar, 1
tree, 1
UI Component library, 1
undo, 1
switch keyword, 1
synchronized, 1, 2
and inheritance, 1
and wait( ) & notify( ), 1
containers, 1
deciding what methods to synchronize, 1
efficiency, 1
method, and blocking, 1
static, 1
synchronized block, 1
system clipboard, 1
system specification, 1
System.arraycopy( ), 1
System.err, 1
System.gc( ), 1
System.in, 1, 2
System.out, 1
System.out.println( ), 1
System.runFinalization( ), 1
T

table, 1
table-driven code, and anonymous inner classes, 1
target, of an event, 1
TCP, Transmission Control Protocol, 1
TCP/IP, and RMI, 1
template
in C++, 1
termination vs. resumption, exception handling, 1
ternary operator, 1
testing
automated, 1
Extreme Programming (XP), 1
unit testing, 1
testing techniques, 1
TextArea, 1, 2
Java 1.1, 1
TextComponent, 1
Java 1.1, 1
TextEvent, 1, 2
TextField, 1
Java 1.1, 1
TextListener, 1
textValueChanged( ), 1
this keyword, 1
Thread, 1, 2
and Java Beans, 1
and Runnable, 1
blocked, 1
combined with main class, 1
daemon threads, 1
dead, 1
deadlock, 1
deciding what methods to synchronize, 1
destroy( ), 1
drawbacks, 1
getPriority( ), 1
interrupt( ), 1
IO and threads, blocking, 1
isDaemon( ), 1
new Thread, 1
notify( ), 1
notifyAll( ), 1
order of execution of threads, 1
priority, 1
properly suspending & resuming, 1
resume( ), 1, 2
resume( ) , deprecation in Java 2, 1
resume( ), and deadlocks, 1
run( ), 1
Runnable, 1
Runnable interface, 1
setDaemon( ), 1
setPriority( ), 1
sharing limited resources, 1
sleep( ), 1, 2, 3
start( ), 1
states, 1
stop( ) , deprecation in Java 2, 1
stop( ), and deadlocks, 1
stopping, 1
suspend( ), 1, 2
suspend( ) , deprecation in Java 2, 1
suspend( ), and deadlocks, 1
synchronized method and blocking, 1
thread group, 1
thread group, default priority, 1
threads and efficiency, 1
wait( ), 1, 2
when they can be suspended, 1
when to use threads, 1
yield( ), 1
throw keyword, 1
Throwable, 1
base class for Exception, 1
throwing an exception, 1
time-critical code sections, 1
TitledBorder, 1
toArray( ), 1
token, 1
tool tip, 1
toolbar, 1
TooManyListenersException, 1, 2
toString( ), 1, 2, 3, 4
training, 1
and mentoring, 1, 2
training seminars provided by Bruce Eckel, 1
Transferable, 1
transient, 1
translation unit, 1
Transmission Control Protocol (TCP), 1
tree, 1
TreeMap, 1, 2
TreeSet, 1, 2
true, 1
try, 1, 2
try block in exceptions, 1
two’s complement, signed, 1
type
base, 1
data type equivalence to class, 1
derived, 1
finding exact type of a base reference, 1
parameterized type, 1
primitive data types and use with operators, 1
type checking and arrays, 1
type safety in Java, 1
type-safe downcast in run-time type identification, 1
weak typing, 1
TYPE field, for primitive class literals, 1
type safe sets of constants, 1
type-conscious ArrayList, 1
U

UDP, User Datagram Protocol, 1
UML, 1
indicating composition, 1
Unified Modeling Language, 1, 2
unary
minus (-), 1
operator, 1
operators, 1
plus (+), 1
unbind( ), 1
undo, 1
unicast, 1
unicast events, 1
UnicastRemoteObject, 1
Unicode, 1
Unified Modeling Language (UML), 1, 2
unit testing, 1
unmodifiable, making a Collection or Map unmodifiable, 1
unsupported methods, in the Java 2 containers, 1
UnsupportedOperationException, 1
upcasting, 1, 2, 3, 4
and interface, 1
inner classes and upcasting, 1
updates of the book, 1
URL, 1
use case, 1
iteration, 1
scope, 1
User Datagram Protocol (UDP), 1
user interface, 1
and threads, for responsiveness, 1
responsive, with threading, 1
V

value
preventing change at run-time, 1
value, HTML keyword, 1
variable
defining a variable, 1
initialization of method variables, 1
variable argument lists (unknown quantity and type of arguments), 1
Vector, 1, 2, 3
and deep copying, 1
of change, 1
used with Hashtable, 1
vector of change, 1
versioning, serialization, 1
versions of Java, 1
visibility, package visibility, (friendly), 1
visual
programming, 1
programming environments, 1
Visual Basic, Microsoft, 1
W

wait( ), 1, 2
Waldrop, M. Mitchell, 1
weak
weakly typed language, 1
WeakHashMap, 1
WeakReference, 1
Web
displaying a Web page from within an applet, 1
placing an applet inside a Web page, 1
safety, and applet restrictions, 1
Web browser
status line, 1
web of objects, 1, 2
West, 1
while, 1
widening conversion, 1
wild-card, 1
window
Abstract Window Toolkit (see AWT), 1
standalone windowed application, 1
Web browser status line, 1
windowActivated( ), 1
WindowAdapter, 1
windowClosed( ), 1
windowClosing( ), 1
windowDeactivated( ), 1
windowDeiconified( ), 1
windowed applications, 1
WindowEvent, 1, 2, 3
windowIconified( ), 1
WindowListener, 1
windowOpened( ), 1
WINDOW_CLOSING, 1
WINDOW_DESTROY, 1
wrapper, dealing with the immutability of primitive wrapper classes, 1
write( ), 1
writeBytes( ), 1
writeChars( ), 1
writeDouble( ), 1
writeExternal( ), 1
writeObject( ), 1
with Serializable, 1
Writer, 1, 2, 3, 4
X

XOR, 1
XP, Extreme Programming, 1
Y

yield( ), 1
Z

zero extension, 1
ZipEntry, 1
ZipInputStream, 1
ZipOutputStream, 1
[

[ ]
indexing operator [ ], 1
^

^, 1
^=, 1
|

|, 1
|=, 1
||, 1