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


! , , & , > , < , + , - , 1 , 2 , 3 , = , 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 , [ , ^ , |


!

!=, 1
operator, 1

‘+’
operator + for String, 1
&

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

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

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

+, 1
-

-, 1
1

1.Collection, 1
1.creational design patterns, 1
1.localhost
and RMI, 1
1.Thread
new Thread, 1
2

2.design patterns
structural, 1
2.Map, 1
2.member initializers, 1
2.Runnable
Thread, 1
3

3.dead, Thread, 1
3.design patterns
behavioral, 1
=

==, 1
operator, 1
vs. equals( ), 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
in program design, 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
addActionListener( ), 1, 2, 3
addAdjustmentListener( ), 1
addComponentListener( ), 1
addContainerListener( ), 1
addElement( ), Vector, 1
addFocusListener( ), 1
addItemListener( ), 1
addition , 1
addKeyListener( ), 1
addListener, 1
addMouseListener( ), 1
addMouseMotionListener( ), 1
addTab( ), 1
addTextListener( ), 1
addWindowListener( ), 1
AdjustmentEvent, 1, 2
AdjustmentListener, 1
adjustmentValueChanged( ), 1
Adler32, 1
aggregation, 1
aliasing, 1
and String, 1
during a method call, 1
align, 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, 4, 5
and constructors, 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 handle into a method, 1
variable argument lists (unknown quantity and type of arguments), 1
array, 1, 2
associative array, 1
bounds checking, 1
dynamic creation, 1
first-class objects, 1
initialization, 1
length, 1
multidimensional, 1
of Object, 1
of objects, 1
of primitives, 1
sorting, 1
ArrayList, 1, 2
Arrays, 1
Arrays.asList( ), 1
assigning objects, 1
assignment, 1
associative array, 1, 2
auto-decrement operator, 1
auto-increment operator, 1
automatic compilation, 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, 2
Button, 1, 2
Button, creating your own, 1
Canvas, 1
CardLayout, 1, 2
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
eliminating flicker, 1
enableEvents( ), 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
processEvent( ), 1
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
repaint( ), 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
update( ), 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
behavioral design patterns, 1
Bill Joy, 1
binary
numbers, 1
operators, 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, in Java 1.1, 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, 2
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
finding problems in old code, 1
C++, 1
copy constructor, 1
GNU Compiler, 1
STL, 1
strategies for transition to, 1
template, 1
templates, 1
vector class, vs. array and Java Vector, 1
why it succeeds, 1
C/C++, interfacing with, 1
callback, 1, 2
Canvas, 1, 2
capitalization
Java capitalization style source-code checking tool, 1
of package names, 1
CardLayout, 1, 2
case statement, 1
cast, 1, 2, 3
and collections, 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, 2, 3
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, 4
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
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, 3, 4
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
reflection, 1
RTTI using the Class object, 1
static inner classes, 1
style of creating classes, 1
subobject, 1
class-responsibility-collaboration (CRC) cards, 1
ClassCastException, 1, 2
classpath, 1, 2, 3
and rmic, 1
pitfall, 1
cleanup
and garbage collector, 1
performing, 1
with finally, 1
client programmer, 1
client, network, 1
clipboard
system clipboard, 1
clone( ), 1, 2
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
code
calling non-Java code, 1
coding standards, 1, 2
organization, 1
re-use, 1
codebase, 1
coding
improving code with inner classes, 1
collection
class, 1, 2
of primitives, 1
Collections, 1, 2
collections library, new, 1
collision
name, 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
compare( ), 1
compareTo( ), 1
comparison
natural comparison method, 1
compilation unit, 1
compile-time constant, 1
compiling, automatic compilation, 1
Component, 1, 2, 3
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, 3
and cloning, 1
and design, 1
and design patterns, 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 constructor synthesized by the compiler, 1
default constructors, 1
for reflection, 1, 2
initialization during inheritance and composition, 1
name, 1
no-arg constructors, 1
order of constructor calls with inheritance, 1
private constructor, 1
return value, 1
static construction clause, 1
consulting & mentoring provided by Bruce Eckel , 1
consume( ), 1
Container, 1
container class, 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
CORBA, 1
costs, startup, 1
couplet, 1, 2
coupling, 1
CRC, class-responsibility-collaboration cards, 1
CRC32, 1
createStatement( ), 1
creational design patterns, 1
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
DatagramPacket, 1, 2
DatagramSocket, 1
DataInput, 1
DataInputStream, 1, 2, 3, 4, 5, 6
DataOutput, 1
DataOutputStream, 1, 2, 3
deadlock, multithreading, 1, 2
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
synthesized by the compiler, 1
synthesizing a default constructor, 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
dequeue, 1
derived
derived class, 1
derived class, initializing, 1
types, 1
design, 1
abstraction in program 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, 2
creational, 1, 2
decorator, 1
factory method, 1
observer, 1
prototype, 1, 2
singleton, 1
vector of change, 1, 2
visitor, 1, 2
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
double dispatching, 1, 2, 3
multiple dispatching, 1, 2
dispatching messages, AWT, 1
dispose( ), 1
division, 1
do-while, 1
documentation
comments & embedded documentation, 1
Domain Name Service (DNS), 1
dotted quad, 1
double dispatching, 1, 2, 3
double, literal value marker (D), 1
Double.valueOf( ), 1
downcast, 1, 2, 3
type-safe downcast in run-time type identification, 1
drop-down list, 1
dynamic
array creation, 1
behavior change with composition, 1
binding, 1, 2
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
elementAt( ), Vector, 1, 2
else keyword, 1
enableEvents( ), 1
encapsulation, 1
enum, groups of constant values in C & C++, 1
Enumeration, 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
Exponential notation, 1
extending a class during inheritance, 1
extends, 1, 2, 3
and interface, 1
keyword, 1
extensible, 1
program, 1
extension
pure inheritance vs. extension, 1
Externalizable, 1
alternative approach to using, 1
Extreme Programming (XP), 1
F

factory method, 1
fail fast collections, 1
false, 1
FeatureDescriptor, 1
Field, for reflection, 1
fields, initializing fields in interfaces, 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 static, 1
argument, 1, 2
blank finals in Java 1.1, 1
classes, 1
data, 1
keyword, 1
method, 1
methods, 1
static primitives, 1
with object handles, 1
finalize( ), 1, 2, 3
and inheritance, 1
and super, 1
calling directly, 1
order of finalization of objects, 1
runFinalizersOnExit( ), 1
finally, 1, 2
and constructors, 1
keyword, 1
pitfall, 1
finding .class files during loading, 1
flat-file database, 1
flavor, clipboard, 1
flicker, eliminating, 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
Frame, 1, 2
framework
application framework, 1
control framework and inner classes, 1
friendly, 1, 2
and interface, 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
order of object reclamation, 1
setting handles to null to allow cleanup, 1
generic, 1
get( ), HashMap, 1
getAddress( ), 1
getAppletContext( ), 1
getBeanInfo( ), 1
getClass( ), 1, 2
getConstructor( ), 1
getConstructor( ), reflection, 1
getConstructors( ), 1
reflection, 1
getContents( ), 1
getDirectory( ), 1
getEventSetDescriptors( ), 1
getFile( ), 1
getFloat( ), 1
getInputStream( ), 1
getInt( ), 1
getInterfaces( ), 1
getMethodDescriptors( ), 1
getMethods( ), 1
getModel( ), 1
getName( ), 1, 2
getOutputStream( ), 1
getPort( ), 1
getPriority( ), 1
getProperties( ), 1
getPropertyDescriptors( ), 1
getPropertyType( ), 1
getReadMethod( ), 1
getSelectedItems( ), 1
getState( ), 1
getString( ), 1
getSuperclass( ), 1
getText( ), 1
getTransferData( ), 1
getTransferDataFlavors( ), 1
getWriteMethod( ), 1
GNU C++, 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

handle
assigning objects by copying handles, 1
equivalence vs object equivalence, 1
final, 1
finding exact type of a base handle, 1
handle equivalence vs. object equivalence, 1
null, 1
handleEvent( ), 1, 2
handler, exception, 1
hardware devices, interfacing with, 1
has-a, 1
has-a relationship, composition, 1
hashCode( ), 1, 2
overriding for HashMap, 1
HashMap, 1, 2
HashSet, 1
Hashtable, 1, 2, 3, 4
used with Vector, 1
hasNext( ), 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( ), 1
String, 1, 2
InflaterInputStream, 1
inheritance, 1, 2, 3, 4, 5
and cloning, 1
and design patterns, 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
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
instance initialization in Java 1.1, 1
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
inline method calls, 1
inner class, 1, 2, 3, 4, 5
inner class
access rights, 1
and overriding, 1
and super, 1
and control frameworks, 1
and the AWT, 1
and upcasting, 1
anonymous, 1, 2
anonymous inner class, 1, 2
anonymous inner class and constructors, 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, 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 in Java 1.1, 1
non-static instance initialization, 1
instance of a class, 1
instanceof
dynamic instanceof, 1
keyword, 1
Integer
parseInt( ), 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
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, 5, 6, 7
hasNext( ), 1
next( ), 1
iterator( ), 1
J

JAR, 1
archive tag, for HTML and JAR files, 1
file, 1, 2
files, 1
jar files and classpath, 1
Java 1.1 JAR utility, 1
packaging applets to optimize loading, 1
Java, 1
and classpath, 1
and pointers, 1
and set-top boxes, 1
capitalization style source-code checking tool, 1
crashing Java, 1
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, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44
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, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95
and Swing, 1
IO streams, 1
JAR utility, 1
new array initialization syntax, 1
reflection, 1, 2, 3
Java 2, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18
collections library, new, 1
new collections library, 1
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
database URL, 1
DatabaseMetaData, 1
executeQuery( ), 1
flat-file database, 1
getFloat( ), 1
getInt( ), 1
getString( ), 1
Java DataBase Connectivity, 1
join, 1
relational database, 1
ResultSet, 1
SQL stored procedures, 1
Statement, 1
Structured Query Language (SQL), 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
JTabbedPane, 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
L

label, 1, 2
labeled break, 1
labeled continue, 1
late binding, 1, 2, 3
layout
controlling layout, 1
layout manager, 1
lazy evaluation, 1
left-shift operator (<<), 1
length, for arrays, 1
less than (<), 1
less than or equal to (<=), 1
library
design, 1
use, 1
lightweight
Swing components, 1
lightweight persistence, 1
LineNumberInputStream, 1, 2
LineNumberReader, 1
linked list, 1
LinkedList, 1
List, 1, 2, 3, 4, 5
boxes, 1
drop-down list, 1
Java 1.1, 1
sorting, 1
list box, 1
listener adapters, 1
listener classes, 1
ListIterator, 1
literal
class literal, 1, 2
double, 1
float, 1
long, 1
values, 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
mark( ), 1
Math.random( ), 1
values produced by, 1
mathematical operators, 1
max( ), 1
MDI, 1
member
member function, 1
object, 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
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 handle into a method, 1
polymorphic method call, 1
polymorphic method calls, 1
protected methods, 1
recursive, 1
recursive method calls, 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 dispatching, 1, 2
multiple inheritance, in C++ and Java, 1
multiple-document interface, 1
multiplication, 1
multitasking, 1
multithreading, 1, 2
and collections, 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, HTML keyword, 1
Naming
bind( ), 1
rebind( ), 1
unbind( ), 1
narrowing conversion, 1, 2
native method interface (NMI) in Java 1.0, 1
natural comparison method, 1
natural logarithms, 1
network programming, 1
accept( ), 1
client, 1
Common-Gateway Interface (CGI), 1
DatagramPacket, 1, 2
datagrams, 1
DatagramSocket, 1
dedicated connection, 1
displaying a Web page from within an applet, 1
DNS (Domain Name Service), 1
dotted quad, 1
getAddress( ), 1
getInputStream( ), 1
getOutputStream( ), 1
getPort( ), 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
receive( ), 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 collections library, 1
new operator, 1
and primitives, array, 1
newInstance( ), 1, 2
reflection, 1
newInstance( ), reflection, 1
next( ), 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 equivalent (!=), 1
notify( ), 1
notifyAll( ), 1
notifyListeners( ), 1
notifyObservers( ), 1, 2, 3
null, 1, 2
NullPointerException, 1
numbers, binary, 1
O

object, 1, 2, 3, 4
aliasing, 1
array of Object, 1
arrays are first-class objects, 1
assigning objects by copying handles, 1
assignment, 1
business object/logic, 1
Class object, 1, 2, 3
clone( ), 1, 2
creation, 1
equals( ) method, 1
equivalence, 1
equivalence vs handle equivalence, 1
final, 1
five stages of object design, 1
getClass( ), 1
guidelines for object development, 1
handle equivalence vs. object equivalence, 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
serialization, 1, 2
web of objects, 1, 2
object-oriented
analysis and design, 1
basic concepts of object-oriented programming (OOP), 1
ObjectOutputStream, 1
Observable, 1
Observer, 1
observer design pattern, 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 collections, 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
stack overflow, 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, 2
access, and friendly, 1
and applets, 1
and directory structure, 1
creating unique package names, 1
default package, 1
names, capitalization, 1
statement and book chapter subdirectories, 1
visibility, friendly, 1
paint( ), 1, 2
pair programming, 1
paralysis, analysis, 1
param, HTML keyword, 1
parameter, applet, 1
parameterized type, 1, 2, 3
parseInt( ), 1
pass
pass by value, 1
passing a handle into a method, 1
patterns, design, 1, 2
patterns, design patterns, 1, 2
performance
and final, 1
performance issues, 1
persistence, 1
lightweight persistence, 1
pipe, 1
piped stream, 1
PipedInputStream, 1, 2
PipedOutputStream, 1, 2, 3
PipedReader, 1
PipedWriter, 1
planning, software development, 1
pointers, and Java, 1
polymorphism, 1, 2, 3, 4, 5, 6, 7, 8
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
collections of primitives, 1
comparison, 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
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
and the final specifier, 1
constructor, 1
inner class, 1
inner classes, 1
problem space, 1, 2
process, and threading, 1
processEvent( ), 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
in the large, 1
multiparadigm, 1
object-oriented, 1
pair, 1
progress bar, 1
promotion
of primitive types, 1
type promotion, 1
Properties, 1, 2
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
use in clone( ), 1
protocol, 1
unreliable protocol, 1
prototype, 1
design pattern, 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
Quicksort, 1
R

RAD (Rapid Application Development), 1
radio button, 1
random number generator, values produced by, 1
random( ), 1
Random.nextBytes( ), 1
RandomAccessFile, 1, 2, 3
rapid prototyping, 1
re-throwing an exception, 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
receive( ), 1
recursive, 1
method calls, 1
redirecting standard IO, 1
refactoring, 1
referencing, forward referencing, 1
reflection, 1, 2, 3, 4
and Beans, 1
difference between RTTI and reflection, 1
Java 1.1 reflection, 1
registry
remote object registry, 1
relational
database, 1
operators, 1
reliable protocol, 1
Remote Method Invocation (RMI), 1
RemoteException, 1
remove( ), 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
repaint( ), 1
reporting errors in book, 1
request, in OOP, 1
requestFocus( ), 1
requirements analysis, 1
reset( ), 1
ResultSet, 1
resume( ), 1, 2
and deadlocks, 1
deprecation in Java 2, 1
resumption, termination vs. resumption, exception handling, 1
return
constructor return value, 1
overloading on return value, 1
reusability, 1
reuse, 1, 2
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
eliminating from your design, 1
Field, 1
getConstructor( ), 1
instanceof keyword, 1
isInstance, 1
meta-class, 1
Method, 1
misuse of RTTI, 1, 2, 3
newInstance( ), 1
reflection, 1
run-time type identification (RTTI), 1
type-safe downcast, 1
using the Class object, 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
running programs and the classpath, 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
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
setActionCommand( ), 1
setAlignment( ), 1
setBorder( ), 1
setChanged( ), 1, 2
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
setSelectedIndex( ), 1
setText( ), 1
setToolTipText( ), 1
shallow copy, 1, 2
shape
example, 1, 2
example, and run-time type identification, 1
shift operators, 1
shortcut, menu shortcuts, 1
show( ), 1
showConfirmDialog( ), 1
showDocument( ), 1
showMessageDialog( ), 1
showStatus( ), 1
side effect, 1, 2, 3, 4
signed two’s complement, 1
Simula programming language, 1
Simula-67, 1
singleton, 1
design pattern, 1
size( ), Vector, 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
software
development methodology, 1
Software Development Conference, 1
solution space, 1
sort( ), 1
sorting, 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
overflow, 1
standard input
Reading from standard input, 1
standards
coding standards, 1, 2
start( ), 1, 2
startup costs, 1
Statement, 1
mission, 1
static, 1
and final, 1
and inner classes, 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, 3
lexicographic vs. alphabetic sorting, 1
methods, 1
Operator +, 1, 2
operator + and += overloading, 1
toString( ), 1, 2
substring( ), 1
trim( ), 1
StringBuffer, 1, 2
methods, 1
StringBufferInputStream, 1, 2
StringReader, 1
StringSelection, 1
StringTokenizer, 1
StringWriter, 1
Stroustrup, Bjarne (C++ inventor), 1
structural design patterns, 1
stub, RMI, 1
style of creating classes, 1
subList( ), 1
subobject, 1, 2
substitutability, in OOP, 1
substitution
principle, 1
substring( ), 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
addTab( ), 1
BasicArrowButton, 1
BoxLayout, 1
ButtonGroup, 1
combo box, 1
Component, 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
JTabbedPane, 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
newInstance( ), 1
popup menu, 1
progress bar, 1
rollover, 1
setBorder( ), 1
setIcon( ), 1
setSelectedIndex( ), 1
setToolTipText( ), 1
showConfirmDialog( ), 1
showMessageDialog( ), 1
slider, 1
splitter control, 1
table, 1
TitledBorder, 1, 2
tool tip, 1
toolbar, 1
tree, 1
UI Component library, 1
undo, 1
switch keyword, 1
synchronized, 1
and inheritance, 1
and wait( ) & notify( ), 1
collections, 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.err, 1
System.in, 1, 2
System.out, 1
System.out.println( ), 1
T

table, 1
target, of an event, 1
TCP, Transmission Control Protocol, 1
TCP/IP, and RMI, 1
template
in C++, 1, 2
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
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, 2
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
TreeSet, 1
trim( ), 1
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 handle, 1
parameterized type, 1, 2
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-check coding, 1
type-conscious Vector, 1
U

UDP, User Datagram Protocol, 1
UML, 1
indicating composition, 1
Unified Modeling Language, 1
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
unit testing, 1
unmodifiable collections, 1
unsupported methods, in the Java 2 collections, 1
UnsupportedOperationException, 1
upcasting, 1, 2, 3, 4, 5
and interface, 1
inner classes and upcasting, 1
update( ), 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, 4, 5, 6
addElement( ), 1
and deep copying, 1
elementAt( ), 1, 2
of change, 1
size( ), 1
type-conscious Vector, 1
used with Hashtable, 1
vector of change, 1, 2, 3, 4
versioning, serialization, 1
versions of Java, 1
visibility, package visibility, (friendly), 1
visitor pattern, 1, 2
visual
programming, 1
programming environments, 1
Visual Basic, Microsoft, 1
W

wait( ), 1, 2
weak
weakly typed language, 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

ZipEntry, 1
ZipInputStream, 1
ZipOutputStream, 1
[

[ ]
indexing operator [ ], 1
^

^, 1
^=, 1
|

|, 1
|=, 1
||, 1