Index

Symbols

#define statements, Syntactic Sweet ‘n’ Low
& (ampersand) reference operator in C, Operators
(\) (backslash), strings, Path localization
* (asterisk)
dereference operator, Operators
for importing classes, Importing Classes
+ (plus sign)
overloaded operators, Method Overloading
string concatenation operator, A Word About Strings, Operators, String Constructors, The java.lang.StringBuffer Class
-c option (jar), The jar Utility
-D option (java), System Properties
-d option (javac), The Java Compiler
-depend option (javac), The Java Compiler
-f option (jar), The jar Utility
-m option (jar), JAR manifests
-noasyncgc option, Garbage Collection
-t option (jar), The jar Utility
-v option (jar), The jar Utility
-x option (jar), The jar Utility
. (dot) operator, dates and times, Variable access
/ (slash) in /** */ comments, Javadoc Comments
2D API, Swing, Drawing with the 2D API, Printing
ColorModels, SampleModels, and DataBuffers, BufferedImage Anatomy
displaying images, Displaying Images, Scaling and Size
drawing techniques, using, Using Drawing Techniques, Offscreen Drawing
drawing, classes and packages, The Big Picture, The Big Picture
filling shapes, Filling Shapes, Desktop Colors
fonts, using, Using Fonts, Font Metrics
image operators in, Filtering Image Data
Printing API, Printing
rendering pipeline, The Rendering Pipeline, The Whole Iguana
stroking shape outlines, Stroking Shape Outlines
<= (less than or equal to) operator, Comparisons
<>(less than, greater than) operators, Comparisons
== (equal) operator, More Events and Interfaces, Comparisons, Hashcodes and key values
>= (greater than or equal to) operator, Comparisons
>> (right-arithmetic-shift with sign extension) operator, Operators
>>> (right-arithmetic-shift with no sign extension) operator, Operators
@ (at sign) in doc comments, Javadoc Comments
[] (index operator), Arrays
{} (curly braces), Arrays
for creating arrays, Array Creation and Initialization

A

absolute paths, File operations, Loading Application Resources
absolute positioning, GUI components, Absolute Positioning
abstract classes, Syntactic Sweet ‘n’ Low
abstract modifier, Glossary
constructors and, Constructors
methods and classes, Abstract Methods and Classes
Abstract Window Toolkit (see AWT)
AbstractTableModel class, Round Two: Creating a Table Model
accelerators, Menus
accept() (ServerSocket), Servers
accessor methods
defining to set and return values, Objects in Java
fields, Accessing Fields
ActionEvent class, Events, Events, Buttons and Labels
checkboxes, Checkboxes and Radio Buttons
generic adapter for, creating, Putting Reflection to Work, Runtime Event Hookups with Reflection
ActionListener interface, More Events and Interfaces, Components, Event Receivers and Listener Interfaces, Buttons and Labels
implementing for popup menus, The PopupMenu Class
registering, Menus
actionPerformed(), Components, Enabling and Disabling Components, Event Receivers and Listener Interfaces
JButton class, More Events and Interfaces, Buttons and Labels
TextArea, TextField classes, The TextEntryBox Application
actions hashtable, Putting Reflection to Work
activation
Java Activation Framework (JAF), The Java Activation Framework
remote objects, RMI Object Activation
activeCount(), Working with the ThreadGroup Class
ad-hoc polymorphism (see polymorphism)
adapter classes, Inner Classes, Using an adapter, Adapter Classes, Dummy Adapters
anonymous, Anonymous inner classes
BeanContext ChildSupport, BeanContext and BeanContextServices
Beans, connecting event source and listeners, Events Hookups and Adapters, Events Hookups and Adapters
creating for interfaces, Dynamic Interface Adapters
dummy adapters, Dummy Adapters
generic adapter for ActionEvents, Putting Reflection to Work, Runtime Event Hookups with Reflection
adaptive compilation, A Virtual Machine
add(), Collection Flavors
Container class, Layout, Containers
GridBagConstaints class, The GridBagConstraints Class
addActionListener(), Event Sources
addCookie(), Cookies
addElement() (Vector), Wrappers for Primitive Types
addImage(), Using a MediaTracker
addMouseListener(), Events
addMouseMotionListener(), Interfaces
addObserver(), Observers and Observables
addTab() (JTabbedPane), The JTabbedPane Class
AffineTransformOp class, Using the AffineTransformOp Class
algorithms
DSA (Digital Signature Algorithm), Public and private keys
encryption, Using Digital Signatures
BigInteger class, using, The java.math Class
rot13 (rotate by 13 letters), The rot13InputStream Class
SHA algorithm, JAR manifests
for garbage collection, Garbage Collection
image scaling, Scaling and Size
ZLIB compression, Data Compression
aliases for keys in certificates, The TestWrite example
align attribute (HTML), The Complete <APPLET> Tag
allocation/deallocation of memory, Dynamic Memory Management, Garbage Collection
AlphaComposite class, The Whole Iguana
alt attribute (HTML), The Complete <APPLET> Tag
Alt key modifier, Mouse and Key Modifiers on InputEvents
anchoring components (GridBagLayout), Anchoring
animations
drawing, Drawing Animations, Drawing Animations
Hypnosis example, Drawing Animations, Drawing Animations
flicker and blinking problems
eliminating with double buffering, Double Buffering
LimitedFlicker application (example), Limited Redrawing, Limited Redrawing
TerribleFlicker application (example), Using Drawing Techniques, Limited Redrawing
image observers and, Implementing an ImageObserver
Java 2 support for, The Image Class
juggling beans, Properties and Customizers
anonymous
arrays, Anonymous Arrays
inner classes, Inner Classes, Anonymous inner classes, Putting Reflection to Work
API (Application Programming Interface), Glossary
append(), The java.lang.StringBuffer Class, Managing Text Yourself
appending data to existing files, File Streams
Apple Newton, security risks in NewtonScript, Safety of Implementation
Apple QuickTime (.mov) Player, Working with Movies
applets, Enter Java, Applets, Applets, Where We’ve Been, Driving the browser, Glossary
accessing URLs and correct protocol handlers, Stream Data
AppletContext interface, Getting Applet Resources, Driving the browser
methods, summary of, Applets versus standalone applications
AppletSecurityManager class, The Security Manager
AppletStub interface, Getting Applet Resources, Applets versus standalone applications
appletviewer, The Java Interpreter, Sockets and security
applications vs., The JApplet Class
AudioClip interface, Working with Audio
class resources, finding, Loading Application Resources
clock, example, Attributes
control methods, Applet Control
digital signatures, Using Digital Signatures, Where We’ve Been
examples of simple, A Word About Synchronization
files and, Applets and Files
HeartBeat applet (example), The HeartBeat Applet, The Pulse server code
housing in frames or windows, Windows and Frames
images, retrieving, The Image Class
JApplet class, Containers, The JApplet Class, Applets versus standalone applications
loading class files, Loading Class Files
MediaTracker, using, Using a MediaTracker
packages and, Packages
Plug-in, Using the Java Plug-in, Viewing Plug-in Applets
HTML tag complexity, Messy Tags
viewing, Viewing Plug-in Applets
properties unreadable by, System Properties
resources, getting, Getting Applet Resources, Applets versus standalone applications
inter-applet communication, Inter-applet communication
parameters, Applet parameters
standalone applications vs., Applets versus standalone applications
security managers for, The JApplet Class, The Applet Security Sandbox
security restrictions on, Policy Files, Sockets and security
serializing, Attributes
sharing classes with standalone applications, Loading Application Resources
signed, implementing with Plug-in, What about Netscape and Internet Explorer?
system properties, limiting access to, System Properties
tags, The JApplet Class, The <APPLET> Tag, Viewing Applets
appletviewer program and, Viewing Applets
attributes, Attributes
complete syntax, The Complete <APPLET> Tag
converting to and tags, Messy Tags
disadvantages of, Using the Java Plug-in
JAR files, listing in ARCHIVE attribute, Java Archive (JAR) Files
tags, The <APPLET> Tag, Parameters
threading, Threads in Applets
viewing, Driving the browser, Glossary
application/x-tar handler, The application/x-tar Handler, Using our new handler
applications, Glossary
applets (see applets)
Java as general language for, Java as a General Application Language
loading resources, Loading Application Resources, Loading Application Resources
look-and-feel of components, Peers
multithreading in, Multithreading
security, Application and User-Level Security, Signing Classes
restrictions in Java 2, Policy Files
security managers for, Safety of Implementation, Security Managers
standalone, applets vs., Applets versus standalone applications
arbitrary-precision numbers, The java.math Class
architecture, Observers and Observables
(see also Model-View-Controller framework)
component, Glossary
Java, Future Buzz?
JavaBeans, What’s a Bean?
archive attribute, The Complete <APPLET> Tag
archive attribute (HTML), Java Archive (JAR) Files, The Complete <APPLET> Tag
ARGB (alpha RGB) color model, Color Models
arguments
declaring for methods, Variables and Class Types
instance variables vs., Instance Variables
passing to methods, Argument Passing and References
by value, Argument Passing and References
ArithmeticException, Math Utilities
arraycopy(), Using Arrays
arrays, Arrays, Reference Types, Arrays, Inside Arrays
anonymous, Anonymous Arrays
Array class, What About Arrays?
ArrayList class, Implementations
ArrayStoreException, Arrays and the Class Hierarchy
bounds checking, performance and, A Virtual Machine
bytes, converting to strings, String Constructors
characters, constructing strings from, String Constructors
classes for, Inside Arrays, Arrays and the Class Hierarchy, Arrays and the Class Hierarchy
collections and, Collections
creating and initializing, Array Creation and Initialization, Array Creation and Initialization
data types, Array Types
declaring, Arrays
index operations
ArrayIndexOutOfBoundsException, Using Arrays
unchecked exceptions and, Checked and Unchecked Exceptions
multidimensional, Multidimensional Arrays
raw data, creating data buffer from, Updating a BufferedImage
raw data, wrappers for, BufferedImage Anatomy
reference types and, Reference Types
references to elements of, Dynamic Memory Management
of String objects, The Java Interpreter
true, in Java, Dynamic Memory Management
using, Using Arrays
arrows, clicking to display choices, Lists and Combo Boxes
ascent and descent (fonts), Font Metrics
ASCII characters
character literals as escaped sequences, Character literals
Unicode characters, compatible coding of, Text Encoding, Data streams
assignment, Assignment
local variables, Initializing Local Variables
asyncExecute(), Passing remote object references
attributes
default (color and font), setting in components, The Big Picture
HTML, Java Archive (JAR) Files, Attributes, Loading Class Files
SimpleAttributeSet class, Managing Text Yourself
text, creating sets for, Managing Text Yourself
audio
AudioClip interface, Working with Audio
file formats supported by Java, Working with Audio
formats, Java Media Framework supporting, New Kinds of Media
working with, Working with Audio, Working with Audio
Java Sound API, Working with Audio
authenticating documents and data, digital signatures, Using Digital Signatures, Where We’ve Been
authority, certificate (see certificate authority)
automated documentation generators, Javadoc Comments
available(), Terminal I/O
FileInputStream class, File Streams
AWT (Abstract Window Toolkit), HelloJava3: The Button Strikes!, Swing, Glossary
AWTEvent class, Events, Event Types
events
masks, Enabling new-style events explicitly
pre-Java 1.1, handling of, Old-Style and New-Style Event Processing
moving to Swing, reasons for, Why the Move from AWT to Swing?
peer system, Peers

B

backslash character (\) in strings, Path localization
BadExpression exception, Round Three: A Simple Spreadsheet
base directory, URL name and, Dynamic class loading
base type, Reference Types, Arrays
base URL, Uniform Resource Locators (URLs)
finding, Loading Application Resources
HTML documents, Loading Class Files
baselines (fonts), Font Metrics
BasicStroke class, The Rendering Pipeline, Stroking Shape Outlines
BeanContextChild interface, BeanContext and BeanContextServices
BeanContextMembershipListener, BeanContext and BeanContextServices
BeanContextProxy interface, BeanContext and BeanContextServices
BeanContextServiceAvailableEvents and BeanContextServiceRevoked Events, BeanContext and BeanContextServices
BeanContextServicesListener, BeanContext and BeanContextServices
Beans, What’s a Bean?, The Java Activation Framework, Glossary
activation, The Java Activation Framework
Bean Development Kit (BDK), The BeanBox Application
bugs in, Working with Serialized Beans
BeanBox application, The BeanBox Application, Working with Serialized Beans
events, hooking to methods, Events Hookups and Adapters
running, Running the BeanBox application
BeanContext and BeanContextServices interfaces, BeanContext and BeanContextServices, BeanContext and BeanContextServices
Beans class, Bean Instantiation and Type Management
building, Building Beans, Creating customizers and property editors
Bean for text display, A (Slightly) More Realistic Example
BeanInfo class, How Big Is a Bean?, Customizing with BeanInfo, Creating customizers and property editors
component with bindable properties, Creating a Component with Bindable Properties, Design patterns for properties
icons for, Supplying icons
invisible multiplier Bean (example), An invisible multiplier
validating numeric data with (example), A Bean for validating numeric data
collection, BeanContext and BeanContextServices
customizers, Properties and Customizers
customizers and property editors, creating, Creating customizers and property editors
events hookups and adapters, Events Hookups and Adapters, Events Hookups and Adapters
hand-coding with, Hand-Coding with Beans, Working with Serialized Beans
instantiation and type management, Bean Instantiation and Type Management
serialized Beans, Working with Serialized Beans, Working with Serialized Beans
JavaBeans architecture, Glossary
properties, Properties and Customizers, Properties and Customizers
bound, Bound Properties, Bound Properties
constrained, Constrained Properties
design patterns for, Design patterns for properties
size of, How Big Is a Bean?
BeanShell script, The BeanShell application, BeanShell: Simple Java Scripting, Learning More . . .
Java statements and expressions, Java Statements and Expressions
methods and objects in, Scripted Methods and Objects
running, Running BeanShell
BevelBorder class, Borders
BigDecimal class, The java.math Class
BigInteger class, The java.math Class
bind() (Naming), An RMI Example
binding methods dynamically, Overridden methods and dynamic binding
blinking text, creating, HelloJava4: Netscape’s Revenge, A Word About Synchronization
block comments in Java, Comments
boolean data type, Primitive Types, Glossary
boolean values
blinkState, Running Code in the Thread
properties, Design patterns for properties
boolean variables, Instance Variables
BorderLayout layout manager, Layout Managers, The TextEntryBox Application, BorderLayout, BorderLayout
creating and adding buttons to, BorderLayout
multiple panels, displaying in, BorderLayout
borders (Swing components), Borders, Borders
Border implementation classes, Borders
Border interface, Borders
BorderFactory class, Borders
bound properties, Beans (see properties under Beans)
Box class, BoxLayout
BoxLayout layout manager, BoxLayout
braces {}, Arrays
break statements, Statements
bubbling up (exceptions), Bubbling Up
buffered data, forcing system to send, A Simple Object-Based Server
BufferedImage class, BufferedImage Anatomy
application, creating from ARGB pixel values array, Creating an Image
converting to Image, Converting an Image to a BufferedImage
Rasters and ColorModels, BufferedImage Anatomy
updating, Updating a BufferedImage, Updating a BufferedImage
BufferedImageOp interface, Filtering Image Data
buffers
BufferedInputStream class, Streams, Stream Wrappers, Buffered streams
BufferedOutputStream class, Streams, Buffered streams
BufferedReader class, Streams, Character Streams, Buffered streams
BufferedWriter class, Streams, Buffered streams
StringBuffer class, Strings to Streams and Back
building Beans, Building Beans, Creating customizers and property editors
business logic, representing with Session Beans, Enterprise JavaBeans
Button class (see JButton class)
ButtonGroup class, Checkboxes and Radio Buttons, Menus
buttons, Buttons and Labels, Checkboxes and Radio Buttons
(see also checkboxes; radio buttons)
action commands, getting and setting, Buttons and Labels
adding in BorderLayout, BorderLayout
adding to CardLayout, CardLayout
adding to content pane of JFrame using FlowLayout, FlowLayout
combo box and list example, Lists and Combo Boxes
HTML-formatted text in labels, Buttons and Labels
byte arrays, constructing strings from, String Constructors
byte data type, Glossary
byte-code, A Virtual Machine
interpreter (HotSpot), A Virtual Machine
verifier, Java Compared with Other Languages, Safety of Implementation, The Verifier
bytes
available on InputStream, Terminal I/O
streams, handling with input/output streams, Streams
writing to files, File Streams

C

C programming language
array type declarations, Array Types
comma (,) operator, Statements
curly braces {} construct for array creation, Array Creation and Initialization
errors, dealing with, Exceptions
structs, comparing classes to, Classes
structures, Reference Types
C++ programming language, Java’s Origins
fragile base class problem, Incremental Development
C/C++ programming languages
comments, Java support for, Comments
data types, Types
function pointers, Interfaces
interfaces vs., Interfaces as Callbacks
goto statements, Statements
Java, comparision to, Java Compared with Other Languages
malloc’ed storage, Initializing Local Variables
memory management, Dynamic Memory Management
operators, Operators
preprocessor #include statement, The import Statement
static data typing, Type Safety and Method Binding
calculations, creating application for, A Simple Object-Based Server
Calculator application, creating, Composite Layouts, Composite Layouts
calendars
Calendar class, Dates
GregorianCalendar class, Dates
callbacks, Interfaces, Glossary
interfaces as, Interfaces as Callbacks
CanisMinor web browser (example), HTML and RTF for Free, HTML and RTF for Free
canonical file paths, File operations
canRead() (File), File operations
canWrite() (File), File operations
capitalization, Static Members
CardLayout layout manager, Layout Managers, CardLayout
case
checking strings for equivalence, Comparisons
file paths, File operations
lowercase names in properties sheets, Design patterns for properties
toUpperCase(), toLowerCase(), Editing
case expressions (default), Statements
casting, Casting, The Collection Interface, Glossary
in Java, Types
map objects, The Map Interface
catch clauses, Exceptions, Statements, Exception Handling, Exception Handling, Glossary
control, transferring out of method, Try Creep
cells (JTable), A First Stab: Freeloading
certificate authority (CA), Certificates
Certificate Signing Request (CSR), Certificates
certificates, Signing Classes, Certificates, User (signer) certificates, Keystores, Keys, and Certificates, Signing JARs, Glossary
certificate authority certificate, Certificate authority (CA) certificates
generating or importing with keytool, Signed JAR Files: The keytool and jarsigner Utilities
public keys, wrapping in, Certificates
storing in keystore, The TestWrite example
CGI (Common Gateway Interface), Talking to CGI Programs and Servlets, SSL and Secure Web Communications
web browser, passing information to, GET, POST, and the “extra path”
chaining multiple pipes, Pipes
changeColor() (Color), Using Color Methods
characters
arrays of, constructing strings from, String Constructors
buffer for (StringBuffer), The java.lang.StringBuffer Class
char data type, Text Encoding, Primitive Types, Glossary
character literals, Character literals
character streams, Character Streams
encoding, Text Encoding
ISO standards, Glossary
web clients/servers, Do French web servers speak French?
passwords, echoing, Say the Magic Word
printing from strings, Things from Strings
readers and writers, dealing with, Streams
reading from files, File Streams
removing from StringBuffer, The java.lang.StringBuffer Class
writing to files, File Streams
charAt() (String), Things from Strings
checkboxes, Checkboxes and Radio Buttons, Checkboxes and Radio Buttons
DriveThrough application (example), Checkboxes and Radio Buttons
checked exceptions, Checked and Unchecked Exceptions
checkError(), Print streams
checkID() (MediaTracker), Using a MediaTracker
checksums (JAR file manifests), JAR manifests
checkTopLevelWindow() (SecurityManager), The Security Manager
Cheese menu (example), Menus
childrenAdded() and childrenRemoved(), BeanContext and BeanContextServices
ChoiceFormat class, The java.text Class
class loaders, Class Loaders, Glossary
applets, security restrictions on sharing, Inter-applet communication
class methods, Static Members, Glossary
class paths, The Java Interpreter, The Class Path, The Class Path, Working with Movies, Glossary
(see also paths)
default, The Class Path
environment variables, operating systems, The Class Path
jfm.jar, adding to use JMF, Working with Movies
class variables, Static Members, Glossary
ClassCastException, Casting, The Collection Interface
classDepth() (SecurityManager), The Security Manager
classes, A Virtual Machine, Classes, Static Members, Static Members, Basic Utility Classes, The java.text Class, Glossary
abstract, Abstract Methods and Classes
adapter, Inner Classes, Adapter Classes, Dummy Adapters
anonymous inner classes, Putting Reflection to Work
archives (see JAR files)
arrays, Inside Arrays, Arrays and the Class Hierarchy, Arrays and the Class Hierarchy
AWT vs. Swing, Components
Beans vs., Bean Instantiation and Type Management
Class class, The Class Class, The Class Class
methods, Reflection
class files
loading, Loading Class Files
modification times, The Java Compiler
storing in packages, Packages
class instances, Classes and Objects, Classes
class resources, Loading Application Resources, Loading Application Resources
ClassCastException, The Collection Interface, Getting the Content as an Object
ClassNotFoundException, The Class Class
compiler, working with, Syntactic Sweet ‘n’ Low, Interfaces
depth in Java stack, The Security Manager
drawing, The Big Picture
encapsulating data, Safety of Implementation, Using Color Methods
events, Events
for exceptions, Exceptions and Error Classes
extending, Interfaces
finding with java interpreter, The Class Path
floating-point manipulation, strictfp modifier, Floating-point precision
HelloJava1 class example, Classes
HTML-format documentation, creating with javadoc, Javadoc Comments
incremental development, Incremental Development
inner classes, Events, Security implications, Glossary
instance variables, Instance Variables
Java security model for, Safety of Implementation
loading dynamically, Dynamic class loading
locking by synchronized methods, A Word About Synchronization
main(), specifying for manifests, JAR manifests
methods and fields, accessing, Accessing Fields and Methods
modifiers, The paintComponent( ) Method
names, Anonymous inner classes
(see also relative paths; absolute paths)
anonymous inner classes, Anonymous inner classes
dashes, converting to underscores, Locating Content Handlers
simple vs. fully-qualified, The import Statement
objects and, Classes and Objects
packages and, Packages and Compilation Units, The Unnamed Package
importing, Importing Classes
unnamed packages, The Unnamed Package
visibility of, Class Visibility
printing, Printing
reference types, representing with, Reference Types
relationships among, Relationships Among Classes, Security implications
inner classes, Inner Classes, Security implications
interfaces, Interfaces, Subinterfaces
subclassing and inheritance, Inheritance, Subclassing and Inheritance, Abstract Methods and Classes
scalability, Scalability
for shapes, Filling Shapes
signing, Signing Classes
in source code files, The Java Compiler
static members in, Static Members, Static Members
streams (java.io package), Input/Output Facilities, The rot13InputStream Class
types and variables, Variables and Class Types
user interface components, Swing
-classpath option, The Java Interpreter, The Class Path
clients, Clients and Servers, Clients, Glossary
class files, making available via web server, Dynamic class loading
connections, detecting lost, TCP_KEEPALIVE
remote object references, passing, Passing remote object references
RMI, constructing, An RMI Example
clipping shapes, The Rendering Pipeline, Go Crazy
clipping region for image update, Limited Redrawing
combining with double buffering, Double Buffering
Iguana example, The Whole Iguana
clock applet, Threads in Applets
example, Attributes
clock display, updating every second, Timers
Cloneable interface, Cloning Objects
CloneNotSupportedException, Cloning Objects
cloning objects, Cloning Objects, Cloning Objects
close()
File class, File Streams
InputStream class, Terminal I/O
ServerSocket class, Servers
closing JFrames and JWindows, Windows and Frames
code
compilation units, Compilation Units
copying for examples, A First Application
hand-coding with Beans, Hand-Coding with Beans, Working with Serialized Beans
instantiation and type management, Bean Instantiation and Type Management
serialized Beans, Working with Serialized Beans, Working with Serialized Beans
running in threads, Running Code in the Thread
timers for execution, Timers
code attribute (HTML), Attributes, The Complete <APPLET> Tag, Loading Class Files
code blocks, Statements
static vs. nonstatic, Static and Nonstatic Code Blocks
codebase, The policytool Utility
codebase attribute (HTML), The Complete <APPLET> Tag
alternative base URL, specifying for class files, Loading Class Files
Collator class, The Collator class
collections, Collections, WeakHashMap: An Interesting Variation
Collection interface, Collections, BeanContext and BeanContextServices
Collections class, Slam Dunking with Collections
sorting, Sorting for Free
example, A Thrilling Example, A Thrilling Example
Hashtable class, Collections
implementation classes, Implementations, Hashcodes and key values
iterators, Iterators
List interface, Collection Flavors
Map interface, The Map Interface
Set interface, Collection Flavors
SortedSet interface, Collection Flavors
Vector class, Collections
Collections Framework, Collections
maps, The Map Interface
colors
button labels, changing for, Buttons and Labels
Color class, Color Commentary
ColorModel class, Color Models
comparing, Desktop Colors
compositing, The Rendering Pipeline, Go Crazy, The Whole Iguana
filling shapes with, Filling Shapes, Desktop Colors
Color class (solid colors), Solid Colors
color gradients, Color Gradients
SystemColor class, Desktop Colors
JColorChooser dialog, The Color Chooser
pixels, representing, BufferedImage Anatomy
PopupColorMenu class, setting for components, The PopupMenu Class, The PopupMenu Class
predefined, Static Members
red text, creating attributes for, Managing Text Yourself
rendering pipeline, operations on, The Rendering Pipeline
columns
count, getting, Round Two: Creating a Table Model
GridBagLayout, GridBagLayout, Spanning Rows and Columns
spanning, Spanning Rows and Columns
weights, calculating, Calculating the weights of rows and columns
headings, formatting, A First Stab: Freeloading
reordering and sizing, A First Stab: Freeloading
combo boxes, Lists and Combo Boxes, Lists and Combo Boxes
creating (example), Lists and Combo Boxes
editable, Lists and Combo Boxes
ComboBoxModel class, Lists and Combo Boxes
comma (,) operator in C, Statements, Operators
comments, HelloJava2: The Sequel, Javadoc Comments
doc comment tags, Javadoc Comments
Java support for C/C++ styles, Comments
javadoc comments, Javadoc Comments
Common Gateway Interface (see CGI)
comparator(), Collection Flavors
SortedMap interface, The Map Interface
compare() (Collator), The Collator class
compareTo()
Collator class, The Collator class
String class, Comparisons
comparing
cloned objects, Cloning Objects
colors, Desktop Colors
hash keys, Hashcodes and key values
strings, Comparisons
compilation units, Glossary
packages and, Packages and Compilation Units, The Unnamed Package
compile-time event hookups, Runtime Event Hookups with Reflection
compiled Java byte-code, A Virtual Machine
compiled programming language vs. interpreted, Java Compared with Other Languages
compilers, Glossary
casting, Casting
contract with classes (Java), Interfaces
HotSpot, A Virtual Machine
javac compiler, The Java Compiler, The Java Compiler
optimizing with, Compiler optimizations
resolving method overloading, Method Overloading
rmic utility, Stubs and skeletons
compiling inner classes, How do inner classes really work?
componentAdded(), Composite Layouts
ComponentEvent class, Event Types
components, GUI, Components, Other Component Methods, Layout Managers, Glossary
(see also layout managers)
absolute positioning, Absolute Positioning
acting as image observers, Image Observers
adding to CardLayout, CardLayout
adding/removing to/from containers, Containers
architecture, Glossary
behavior of, Components
Component class, Relationships and Finger Pointing, Components
(see also JComponent class)
composite layouts for, Composite Layouts, Composite Layouts
as containers, Components
containers, listening for, Listening for Components
creating with bindable properties, Creating a Component with Bindable Properties, Design patterns for properties
custom, creating, Creating Custom Components, Model and View Separation
enabling and disabling, Enabling and Disabling Components
event handlers (pre-Java 1.1), Old-Style and New-Style Event Processing
host operating environment, interacting with, Peers
invisible, creating for BoxLayout, BoxLayout
Java Beans as, What’s a Bean?
JComponent class, Components
(see also JComponent class)
keyboard focus, Focus, Please
layout managers for container display, Layout Managers
methods, Other Component Methods
MVC framework, separating aspects with, The Model/View/Controller Framework
native peers, difficulty of subclassing, Why the Move from AWT to Swing?
relative positioning, Relative Positioning
size of, Layout Managers
stacking in containers, Z-Ordering (Stacking Components)
Swing, Using Swing Components
borders, Borders, Borders
buttons and labels, Buttons and Labels, Buttons and Labels
checkboxes and radio buttons, Checkboxes and Radio Buttons, Checkboxes and Radio Buttons
desktops, Desktops, Desktops
dialogs, Dialogs, The Color Chooser
JPanel, using in double buffering, Double Buffering
JScrollPane class, The JScrollPane Class, The JSplitPane Class
JSplitPane class, The JSplitPane Class
JTabbedPane class, The JTabbedPane Class, The JTabbedPane Class
JTable class, Tables, Round Three: A Simple Spreadsheet
JTree class, Trees, A Complete Example
lists and combo boxes, Lists and Combo Boxes, Lists and Combo Boxes
look-and-feel, pluggable, Pluggable Look-and-Feel, Pluggable Look-and-Feel
PopupMenu class, The PopupMenu Class, The PopupMenu Class
scrollbars and sliders, Scrollbars and Sliders, Scrollbars and Sliders
text components, Text Components, Managing Text Yourself
text components (see text components)
updating, Painting
composite layouts (GridBagLayout), Composite Layouts, Composite Layouts
compositing colors, Go Crazy
rules, The Rendering Pipeline, The Whole Iguana
composition, Glossary
CompoundBorder class, Borders
compression (data), File Compression, Data Compression, Decompressing Data
computer viruses
classes, shielding from, Safety of Implementation
Java tools for combatting, Policy Files
concatenation of strings
+ (plus sign) operator, A Word About Strings, Operators, String Constructors
StringBuffer, implementing with, The java.lang.StringBuffer Class
toString(), The Object Class
concurrency (threads), Multithreading
conditional compilation, Syntactic Sweet ‘n’ Low
conditional statements, Statements
assignments, making inside, Initializing Local Variables
confirmation dialog, Dialogs
connect(), Pipes
URLConnection class, The URLConnection
connected (variable), The URLConnection
connectionless and connection-oriented protocols, Sockets
constants, Types
defining with static variables, Static Members
holding in static variables of classes, Static Members
in interfaces, Interface Variables
constrained properties, Beans, Constrained Properties
constraints, GridBagConstraints (see under GridBagLayout layout manager)
constructors, Constructors, Constructors, Object creation, Constructors, Glossary
ChoiceFormat class, The java.text Class
color models, Creating an Image
Constructor class, Accessing Constructors
DatagramPacket class, The Pulse server code
default, Constructors
Dial class, A Dial Component
file, File constructors
getting, for classes, Reflection
initialization, Full Disclosure: Constructors and Initialization
inner classes and, Inner Classes
overloading, Method Overloading, Working with Overloaded Constructors, Working with Overloaded Constructors
remote object classes, The UnicastRemoteObject class
strings, String Constructors
Strings, for error messages, Throwing Exceptions
StringTokenizer, specifying delimiter charaters, The java.util.StringTokenizer Class
superclass, using, Using Superclass Constructors
tables, A First Stab: Freeloading
time and date, representing, Dates
consume(), Round Three: A Simple Spreadsheet
consumer threads, Passing Messages
containers, Components, Containers, Using Content Panes, Glossary
BeanContext (environment for Beans), BeanContext and BeanContextServices, BeanContext and BeanContextServices
components, layout of (see layout managers)
Container class, Relationships and Finger Pointing, Containers, Containers
ContainerEvent class, Event Types, Composite Layouts
ContainerListener interface, Listening for Components, Composite Layouts
disabling, Enabling and Disabling Components
Enterprise JavaBeans (EJB), Enterprise JavaBeans
events, listening for and handling for child components, Components
frames, methods for controlling, Other Methods for Controlling Frames
preferred size of, Layout Managers
windows and frames, Windows and Frames
adding components to content panes, Using Content Panes
with labeled tabs (JTabbedPane), The JTabbedPane Class, The JTabbedPane Class
content handlers, Glossary
ContentHandler class, The ContentHandler class
determining for URLs, The URLConnection
web browsers, Web Browsers and Handlers, Writing Content and Protocol Handlers
writing, Writing Content and Protocol Handlers, Writing a Content Handler, Using our new handler
application/x-tar handler, The application/x-tar Handler, Using our new handler
locating content handlers, Locating Content Handlers
content panes, Using Content Panes
(see also frames; windows)
using, Using Content Panes
content type (HTTP response), Content Types
continue statements, Statements
Control key modifier, Mouse and Key Modifiers on InputEvents
ControllerListener interface, Working with Movies
controllers (components), The Model/View/Controller Framework
controllers (components), The Model/View/Controller Framework
(see also listeners; Model-View-Controller framework; UI-delegate)
Controls, adding to tabs in JTabbedPane, The JTabbedPane Class
conversion
bytes to/from character streams, Character Streams
protocols into package/class names, Locating Protocol Handlers
to and from strings, Strings from Things, Comparisons
cookies, User Session Management
persistent user tracking with, Cookies
coordinates
animation strategy, use in, Drawing Animations
converting from user space to device space, The Rendering Pipeline
fonts, placing, Font Metrics
GridBagLayout, Grid Coordinates, Grid Coordinates
copying
elements from one array to another, Using Arrays
nonremote objectes, Remote and Non-Remote Objects
source code for examples, A First Application
CORBA (Common Object Request Broker Architecture), RMI and CORBA
core classes, finding with interpreter, The Class Path
countries (see internationalization)
createNewFile() (File), File operations
createShape(), Drawing Animations
createTempFile() (File), File operations
creating objects, Object Creation, Static and Nonstatic Code Blocks
cryptography, Signed JAR Files: The keytool and jarsigner Utilities
algorithms, The java.math Class
checksums (JAR file manifests), JAR manifests
crypt protocol handler, The crypt Handler, Trying it out
CryptInputStream class, The Encryption class, The URLConnection
digital signatures and certificates, Signing Classes
Encryption class, The Encryption class
provider packages for implementing, Signed JAR Files: The keytool and jarsigner Utilities
public-key, Using Digital Signatures, Glossary
public/private key pairs, generating with keytool, Signed JAR Files: The keytool and jarsigner Utilities
curly braces {} construct, creating arrays with, Array Creation and Initialization
currency, formatting with NumberFormat class, The java.text Class
currentColor() (Color), Using Color Methods
cursor, setting in JFrames, Other Methods for Controlling Frames
(see also mouse)
custom components, creating, Creating Custom Components, Model and View Separation
Customizer interface, Creating customizers and property editors
customizing Beans with BeanInfo class, Customizing with BeanInfo, Creating customizers and property editors
events information, getting, Getting Events information
properties information, getting, Getting Properties information
cyclic color gradients, Color Gradients

D

daemon threads, The Java Interpreter, A Thread’s Life
dash (-), class names, converting into underscores (_), Locating Content Handlers
data
buffers, Buffered streams
compressing/decompressing, Data Compression, Decompressing Data
hiding (see encapsulation)
image data
filtering, Filtering Image Data, Using the AffineTransformOp Class
producing, Producing Image Data, Updating a BufferedImage
spreadsheets, applying MVC framework to, The Model/View/Controller Framework
streams of (see input streams output streams streams)
data file types (images), The Image Class
data models, Glossary
(see also Model-View-Controller framework)
lists and combo boxes, Lists and Combo Boxes
separation from views (components), Model and View Separation
sharing among text components, Sharing a Data Model
TableModel interface, Tables
tables, Round Two: Creating a Table Model, Round Three: A Simple Spreadsheet
AbstractTableModel class, Round Two: Creating a Table Model
TableModel interface, Round Two: Creating a Table Model
trees, Trees
DefaultTreeModel interface, Nodes and Models
nodes, Nodes and Models, A Complete Example
TreeModel interface, Nodes and Models
data types, Types, A Word About Strings
array, Array Types
C/C++, Types
casting, Glossary
checking, Type Safety and Method Binding
classes, variables and, Variables and Class Types
external, working with, The Java Activation Framework
integers, Instance Variables
primitive, Types, Character literals, Reference Types, Glossary
arrays, wrappers for, BufferedImage Anatomy
producing from strings, Things from Strings
reference, Reference Types, A Word About Strings
scripting languages, limitations of, Java Compared with Other Languages
state of, The Verifier
data values, getting for JTable, Round Two: Creating a Table Model
database access, Entity Beans and, Enterprise JavaBeans
DataBuffer class, BufferedImage Anatomy
creating from image data array, Updating a BufferedImage
DataBufferByte class, BufferedImage Anatomy
DataBufferInt class, BufferedImage Anatomy
DataBufferShort class, BufferedImage Anatomy
datagram sockets, Datagram Sockets, The Pulse server code
DatagramSocket class, Sockets, Datagram Sockets
DatagramPacket class, The HeartBeat applet code
datagrams, Glossary
DataHandler interface, The Java Activation Framework
DataInput interface, Data streams
DataInputStream class, Stream Wrappers, Data streams
DataOutput interface, Data streams
DataOutputStream class, Streams, Data streams
wrapping FileOutputStream, File Streams
DataSource interface, The Java Activation Framework
dates and times
DateAtHost example, The DateAtHost Client
utility classes, Dates, Dates
Calendar class, Dates
Date class, Dates
DateFormat class, Dates, The java.util.Locale Class
GregorianCalendar class, Dates
debugging
applets with appletviewer program, Viewing Applets
code for, including in source code, Compiler optimizations
conditional compilation, using for, Syntactic Sweet ‘n’ Low
output stream contents using list(), Loading and Storing
decimal integers, Integer literals
BigDecimal class, The java.math Class
declaring
arrays, Arrays, Array Types
classes, Classes
scope, Inner Classes
variables, Variable declaration and initialization, Statements
decoding request parameters, servlet handling of, The ShowParameters Servlet
decompressing data, Decompressing Data
deep copies, Cloning Objects
default
array values, Array Creation and Initialization
case expression, Statements
class paths, The Class Path
constructors, Constructors
property values, Default Values
scrollbar display policies, The JScrollPane Class
security manager, Sockets and security
values for instance variables, Instance Variables
visibility modifiers, Basic Access Modifiers
DefaultMutableTreeNode interface, Nodes and Models
DefaultTreeModel interface, Nodes and Models
delete()
File class, File operations
StringBuffer class, The java.lang.StringBuffer Class
deleteCharAt() (StringBuffer), The java.lang.StringBuffer Class
deleteOnExit() (File), File operations
delimiter characters, specifying in StringTokenizer constructor, The java.util.StringTokenizer Class
delivery, events, Event Delivery
deltas arrays (animation), Drawing Animations
deployment descriptors (EJB), Enterprise JavaBeans
deprecated methods, Javadoc Comments
dereference (&) operator in C, Operators
dereference (*) operator, Operators
descent (fonts), Font Metrics
design methodology for objects, Objects in Java
design patterns (Beans), What’s a Bean?
properties, Design patterns for properties
desktops, Desktops, Desktops
colors for, Desktop Colors
destination image, How ImageProcessor Works
transforming to/from source image, Filtering Image Data
destroy()
Applet class, Threads in Applets, Applet Control
Servlet class, The Servlet Life Cycle
ThreadGroup class, Working with the ThreadGroup Class
destroying objects, Object Destruction, Finalization
development environments, New Software Development Models
for JavaBeans, The BeanBox Application
Dial component (example), A Dial Component, Model and View Separation, Design patterns for properties
converting to Bean, Creating a Component with Bindable Properties
DialEvent class, A Dial Component
DialListener interface, A Dial Component
dialogs, Dialogs, The Color Chooser
JColorChooser dialog, The Color Chooser
JFileChooser class, File Selection Dialog, File Selection Dialog
digests, message, JAR manifests, Glossary
digital signatures, Signing Classes, Using Digital Signatures, Where We’ve Been, Where We’ve Been, Glossary
archive files for applets, Trusted applets
certificates, verifying with, Certificates, User (signer) certificates
DSA (Digital Signature Algorithm), Public and private keys
identity verification and, Using Digital Signatures
keystores, keys and certificates, Keystores, Keys, and Certificates, Signing JARs
META-INF directory and manifest file, JAR manifests
public-key cryptography, Using Digital Signatures
signed classes, Glossary
signed JAR files, Where We’ve Been
DirectColorModel class, Color Models
directories
in class paths, The Class Path
creating, File operations
extracting individual from JAR file, The jar Utility
listing contents of, File Streams
META-INF directory, JAR manifests
modification time, File operations
pathnames, File constructors
specifying alternative for storing class files, The Java Compiler
disabling components, Enabling and Disabling Components
dispatchEvent() (Component), processEvent( )
display policies for scrollbars, The JScrollPane Class
displaying images, Displaying Images, Scaling and Size
Image class, The Image Class
displaying JFrames and JWindows, Windows and Frames
displaying movie in JFrame, Working with Movies
displaying text, creating Bean for, A (Slightly) More Realistic Example
do/while statement, Statements
doc comments, Javadoc Comments
tags used in, Javadoc Comments
Document class, Text Components
sharing among multiple text components, Sharing a Data Model
styled text, creating from, Managing Text Yourself
doDelete() (HttpServlet), HTTP (Web) Servlets
doForm(), The ShoppingCart servlet
doGet() (HttpServlet), HTTP (Web) Servlets
doHead() (HttpServlet), HTTP (Web) Servlets
doLayout(), Layout Managers
Container class, The revalidate( ) and doLayout( ) Methods
Domain Name System (DNS), Datagram Sockets
domain name, specifying for cookie deployment, Cookies
doOptions() (HttpServlet), HTTP (Web) Servlets
doPost() (HttpServlet), HTTP (Web) Servlets
doPut() (HttpServlet), HTTP (Web) Servlets
dot (.) notation, Variable access, Accessing Fields and Methods
dot-separated naming hierarchy (properties), Properties
doTrace() (HttpServlet), HTTP (Web) Servlets
double buffering, Double Buffering
animations and, Drawing Animations
Double class, Filling Shapes
double data type, Floating-point literals
random numbers, working with, Random Numbers
readDouble(), Data streams
doubleValue()
Integer class, Wrappers for Primitive Types
NumberFormat class, The java.text Class
downcasting references, Casting
downloadable content handlers, Web Browsers and Handlers
downloading data, progress indicators for, Multithreading in Swing
Drag and Drop API, Swing
dragging the mouse (events), Events
draw() (Graphics2D), The Rendering Pipeline
draw3DCircle() (Dial class example), A Dial Component
drawImage(), Image Observers
Graphics2D class, The Rendering Pipeline, The Image Class
ImageComponent class, The JScrollPane Class
scaling, cropping and transposition options, Scaling and Size
drawing
2D API, using, Swing, Drawing with the 2D API, Printing
displaying images, Displaying Images, Scaling and Size
drawing techniques, Using Drawing Techniques, Offscreen Drawing
drawing, classes and packages, The Big Picture, The Big Picture
filling shapes, Filling Shapes, Desktop Colors
fonts, Using Fonts, Font Metrics
printing, Printing
rendering pipeline, The Rendering Pipeline, The Whole Iguana
stroking shape outlines, Stroking Shape Outlines
drawing topics (text), Managing Text Yourself
drawString(), Using Fonts, Font Metrics
Graphics class, The paintComponent( ) Method
Graphics2D class, The Rendering Pipeline
drop-down menus, Lists and Combo Boxes
DSA (Digital Signature Algorithm), Public and private keys
duplicate elements, prohibition in sets, Collection Flavors
dynamic
class loading, Dynamic class loading, Passing remote object references
image updating, Updating a BufferedImage, Updating a BufferedImage
interface adapters, Dynamic Interface Adapters
memory management, Dynamic Memory Management
method binding, Overridden methods and dynamic binding
method selection, Dynamic method selection and performance
programming languages, Type Safety and Method Binding, Types
DynamicActionAdapter (example), Putting Reflection to Work, Putting Reflection to Work

E

E (value), The java.lang.Math Class
editing cells (JTable), A First Stab: Freeloading
editing strings, Editing
editors
Editor class, File Selection Dialog
EditorKit classes, HTML and RTF for Free
JEditorPane class
HTML and RTF documents, displaying, HTML and RTF for Free
HTML display in, HTML and RTF for Free, HTML and RTF for Free
using in browser, HTML and RTF for Free
JTextArea and JTextField, Text Components
element(), Round Three: A Simple Spreadsheet
Ellipse2D class, Filling Shapes
tag, Messy Tags
embedded systems, Exceptions
empty interfaces, Empty interfaces
EmptyBorder class, Borders
enableEvents(), Enabling new-style events explicitly
enabling/disabling components, Enabling and Disabling Components
encapsulation, Safety of Implementation, Using Color Methods, Visibility of Variables and Methods, Interfaces and Visibility, Glossary
anonymous inner classes, Inner Classes
encode() (URLEncoder), Using the POST Method
encoding
byte arrays, converting to strings, String Constructors
InputStreamReader and OutputStreamReader, using, Streams
text, Text Encoding
encoding/decoding HTML form information, GET, POST, and the “extra path”
encrypting/decrypting messages, Using Digital Signatures
encryption
public-key techniques, using over SSL, SSL and Secure Web Communications
rot13 algorithm, The rot13InputStream Class
type, specifying in URLs, The crypt Handler
encryption keys, Keystores, Keys, and Certificates, Signing JARs
endsWith() (String), Searching
Enterprise JavaBeans (EJB), Enterprise JavaBeans
Java 2 Enterprise Edition (J2EE) platform, Enterprise JavaBeans
Entity Beans, Enterprise JavaBeans
enumerate(), Working with the ThreadGroup Class
enumerating property names, Properties
Enumeration interface, The java.util.StringTokenizer Class
environment information, System Properties
environment variables, classpath, The Class Path
(see also properties)
EOFException, The java.io.RandomAccessFile Class, A Simple Object-Based Server
equality
equivalence and, Equality and Equivalence
identity vs., More Events and Interfaces
strings, comparing for, Comparisons
equals()
Color class, Desktop Colors
Object class, Hashcodes and key values
String class, The Object Class, Comparisons
UnicastRemoteObject class, The UnicastRemoteObject class
equalsIgnoreCase() (String), Comparisons
errors, Error Handling
(see also exceptions)
classes for, Exceptions and Error Classes
compile time errors, Unreachable statements
Error class, Exceptions and Error Classes
unchecked exceptions and, Checked and Unchecked Exceptions
runtime exceptions, Checked and Unchecked Exceptions
System.err objects, Terminal I/O
escape sequences, Text Encoding
EtchedBorder class, Borders
event handlers
anonymous adapter classes, Anonymous inner classes
inner classes and, Events
events, Events, Events, Events, Multithreading in Swing, Generating Events, Glossary
(see also individual event names)
ActionEvent class, More Events and Interfaces, Events, Buttons and Labels
adapter classes for connecting sources and targets, Putting Reflection to Work, Runtime Event Hookups with Reflection
beans and, Events Hookups and Adapters, Events Hookups and Adapters
components, generating, Generating Events
containers, receiving for child components, Containers
delivery of, Event Delivery
event model, Glossary
EventListener interface, Event Receivers and Listener Interfaces
EventObject class, Events
EventSetDescriptor class, Getting Events information
getting information about (BeanInfo class), Getting Events information
java.awt.event package, The import Statement
processing in different versions of Java, Old-Style and New-Style Event Processing, Enabling new-style events explicitly
receivers and listener interfaces, Event Receivers and Listener Interfaces
runtime hookups with reflection, Runtime Event Hookups with Reflection
sources of, Event Sources
design pattern, Event Sources
Swing GUI
components, notification of, Components
summary of, Event Summary, Event Summary
types of, Event Types
trees, Tree Events
exceptions, Exceptions, Performance Issues, The Class Class, Glossary
(see also individual exception names)
bubbling up, Bubbling Up
catching, Exceptions
checked and unchecked, Checked and Unchecked Exceptions
classes for, Exceptions and Error Classes
error handling in Java, Error Handling
handling, Exception Handling, Exception Handling
handling with try/catch statements, Exceptions
iterators, Iterators
messages with, Throwing Exceptions
overridden methods and, Exceptions and overridden methods
parsing streams, Buffered streams
performance and, Performance Issues
runtime exceptions, Checked and Unchecked Exceptions
stack traces for, Bubbling Up
throwing, Throwing Exceptions
re-throwing, Re-throwing exceptions
executables, building from source code, Syntactic Sweet ‘n’ Low
exists() (File), File operations
expanding and collapsing nodes, Save a Tree
explicit casting, Casting
exportObject() (UnicastRemoteObject), The UnicastRemoteObject class
expressions, Expressions, The instanceof operator, Exceptions
groupting multiple into single with comma (,) operator, Statements
instanceof operator, The instanceof operator
Java, typing in BeanShell, Java Statements and Expressions
method invocations, Method invocation
null value in, The null value
object creation, Object creation
operators in, Operators
order of evaluation, Statements and Expressions
variables, Assignment
extending
classes, Interfaces
interfaces, Subinterfaces
extends (keyword), Inheritance, Glossary
extent (JScrollBar), Scrollbars and Sliders
external data types, working with, The Java Activation Framework
extra path, GET, POST, and the “extra path”

F

face (or font) names, Using Fonts
false (value), Instance Variables, Variable declaration and initialization
family names (fonts), Using Fonts
fields, Classes
accessing, Accessing Fields and Methods
accessing for classes, Reflection
Field class, Accessing Fields
files, Files, Loading Application Resources
applets and, Applets and Files
audio files, Working with Audio
compilation units, Compilation Units
compression (JAR files), File Compression
content type, guessing from name, The URLConnection
File class, The java.io.File Class, File operations
constructors, File constructors
methods of, File operations, File operations
modification time, File operations
path localization, Path localization
file selection dialog, File Selection Dialog, File Selection Dialog
FileInputStream class, Streams
FileNotFoundException, File Streams
FileOutputStream class, Streams, File operations, File Streams
FileReader class, Streams, File Streams
FileWriter class, Streams, File operations
HTTP, uploading and removing, HTTP (Web) Servlets
JFileDialog class, Path localization
listing contents of, File Streams
manifests (JAR), JAR manifests
nonexistent on server, Getting the Content as an Object
RandomAccessFile class, The java.io.RandomAccessFile Class
restricting access to, Room for improvement
source code, .java extension, The Java Compiler
streams, File Streams, File Streams
fill and draw methods, Graphics/Graphics2D classes, Convenience Methods
fill constraints (GridBag), The fill Constraint, Spanning Rows and Columns
fill() (Graphics2D class), The Rendering Pipeline
filling shapes, Filling Shapes, Filling Shapes, Desktop Colors
color gradients in, Color Gradients
desktop colors, Desktop Colors
solid colors, using, Solid Colors
texture, Textures
fillRect(), eliminating from image updates, Using Drawing Techniques
filter(), How ImageProcessor Works
BufferedImageOp interface, Using the RescaleOp Class
filtering, Stream Wrappers
FilterInputStream class, Stream Wrappers, Pipes, The rot13InputStream Class
FilterOutputStream class, Stream Wrappers, Pipes
FilterReader class, Stream Wrappers
FilterWriter class, Stream Wrappers
image data, Filtering Image Data, Using the AffineTransformOp Class
image operators, Filtering Image Data, Using the AffineTransformOp Class
final modifier, Dynamic method selection and performance, Glossary
classes, String Method Summary
constructors and, Constructors
with static modifier, Static Members, Interface Variables
finalization, Finalization
finalize(), Glossary
finally clauses, Statements, The finally Clause, Glossary
fireEvent() (Dial class example), A Dial Component
firePropertyChange() (JComponent), Creating a Component with Bindable Properties
firewalls, Proxies and Firewalls
CGI and, Talking to CGI Programs and Servlets
first(), Collection Flavors, CardLayout
fixed delay/fixed rate recurring tasks, Timers
flags
ImageObserver interface, Implementing an ImageObserver
InputEvent class, values for, Mouse and Key Modifiers on InputEvents
threads, using with, Deprecated methods
windows from untrusted applications, Application and User-Level Security
flicker and blinking problems (animation)
eliminating with double buffering, Double Buffering
LimitedFlicker application, Limited Redrawing, Limited Redrawing
TerribleFlicker application, Using Drawing Techniques, Limited Redrawing
Float class, Filling Shapes
float data type, Floating-point literals
floating-point data types, Floating-point precision, Floating-point literals
arithmetic, Java support for, Math Utilities
floatValue(), Wrappers for Primitive Types
literals, out-of-range values, Math Utilities
parseFloat(), Wrappers for Primitive Types
FlowLayout layout manager, Layout, Layout Managers, FlowLayout
flush(), A Simple Object-Based Server
BufferedOutputStream class, Buffered streams
PrintWriter class, Print streams
focus, GUI components, Focus, Please
focusGained(), Event Receivers and Listener Interfaces
FocusListener interface, Focus, Please, Event Receivers and Listener Interfaces
fonts, Using Fonts, Font Metrics
button labels, changing for, Buttons and Labels
FontRenderContext class, Font Metrics
glyphs and, Drawing Text
metrics information
FontShow application (example), Font Metrics, Font Metrics
LineMetrics class, Font Metrics
methods for obtaining, Font Metrics
setting, Graphics2D, The Rendering Pipeline
style identifiers and point size, Using Fonts
TextEntryBox, setting in, The TextEntryBox Application
for statements, Statements
form data, encoding/decoding, Using the POST Method
format(), The java.text Class
DateFormat class, Dates
MessageFormat class, The java.text Class
formatting
ChoiceFormat class, The java.text Class
classes for, The java.text Class
DateFormat class, Dates
MessageFormat class, The java.text Class
NumberFormat class, The java.text Class
forName(), The Class Class, Accessing Methods
Class class, Dynamic Interface Adapters, The URLConnection
frame windows (see HelloJava3 application)
frames, Windows and Frames, Updating a BufferedImage
(see also JFrame class)
content panes, using, Using Content Panes
HTML, naming, Driving the browser
internal frames, creating in DesktopPane, Desktops
position on screen, setting, Other Methods for Controlling Frames
random static, simulating, Updating a BufferedImage
friendly classes (C++), Basic Access Modifiers
fully qualified class name, specifying for interpreter, The Java Interpreter
function pointers (C/C++), Interfaces
functions (see methods)

G

garbage collection, Garbage Collection, Garbage Collection, Glossary
finalization and, Finalization
gc(), Garbage Collection
key values (WeakHashMap), WeakHashMap: An Interesting Variation
memory management in Java, use of, Dynamic Memory Management
Gaussian distribution of double values, Random Numbers
GC (see garbage collection graphics context)
gc() (System), Garbage Collection
general exceptions, Checked and Unchecked Exceptions
(see also exceptions)
GeneralPath class, Drawing Animations
generic event adapters, Putting Reflection to Work
geographical locations, arranging components in windows by, BorderLayout
geometric shapes
image transformations, Using the AffineTransformOp Class
Shape interface, representing with, Filling Shapes
get and set methods
Beans, requirement for, Creating a Component with Bindable Properties
properties information, obtaining, Design patterns for properties
GET method, Talking to CGI Programs and Servlets, Using the GET Method, The URLConnection
doGet(), correspondence to, HTTP (Web) Servlets
requests, handling, The ShowParameters Servlet
security, adding, SSL and Secure Web Communications
URLs, encoding data in, GET, POST, and the “extra path”
get() (Field), Accessing Fields
getAbsolutePath() (File), File operations
getActionCommand(), Buttons and Labels, Checkboxes and Radio Buttons
getAppletContext(), Driving the browser
getAscent() (LineMetrics), Font Metrics
getBeanContextProxy() (BeanContextProxy), BeanContext and BeanContextServices
getBuffer(), Strings to Streams and Back
getBundle() (ResourceBundle), Resource Bundles
getByName() (InetAddress), The HeartBeat applet code
getCanonicalPath(), File operations
getChild(), Composite Layouts
getClass(), Putting Reflection to Work
Class class, Loading Application Resources
Object class, The Class Class
getCodeBase(), Loading Application Resources
Applet class, The HeartBeat applet code
getComponents() (JPanel), Checkboxes and Radio Buttons
getConstructor(), Accessing Constructors
getConstructors() (Class), Reflection
getContent()
ContentHandler class, The ContentHandler class
URL class, Getting the Content as an Object, Writing a Content Handler
URLConnection class, URLs, Stream Handlers, and Connections, The URLConnection
getContentPane(), Using Content Panes
getContents(), Resource Bundles
getContentType() (URLConnection), The URLConnection
getCookies() (Cookie), Cookies
getCurrencyInstance() (NumberFormat), The java.text Class
getCurrentServiceClasses(), BeanContext and BeanContextServices
getDateInstance() (DateFormat), Dates
getDateTimeInstance() (DateFormat), Dates
getDeclaredConstructors() (Class), Reflection
getDeclaredFields() (Class), Reflection
getDeclaredMethods(), Reflection
getDescent() (LineMetrics), Font Metrics
getDocumentBase(), Loading Application Resources, Applet resources
getEventSetDescriptors() (BeanInfo), Getting Events information
getExtraPath(), GET, POST, and the “extra path”
getField() (Field), Accessing Fields
getFields(), Reflection
getFields() (Class), Reflection
getFile(), The URL Class, File Selection Dialog, The URLConnection
getFilePointer() (RandomAccessFile class), The java.io.RandomAccessFile Class
getHeaderField(), The URLConnection
getHeight(), Implementing an ImageObserver
Image class, Scaling and Size
LineMetrics class, Font Metrics
getHost(), The URL Class
Applet class, The HeartBeat applet code
getIcon(), Supplying icons
getIconImage(), Other Methods for Controlling Frames
getImage(), The Image Class, Implementing an ImageObserver
Toolkit class, Converting an Image to a BufferedImage
getInputStream(), Clients
URLConnection class, The URLConnection, URLs, Stream Handlers, and Connections, The URLConnection
getInsets(), Insets
getInstance()
Collator class, The Collator class
DateFormat class, Dates
NumberFormat class, The java.text Class
getInstanceOf() (Beans), Bean Instantiation and Type Management
getInt() (Field), Accessing Fields
getLeading() (LineMetrics), Font Metrics
getLineMetrics() (Font), Font Metrics
getList(), Passing remote object references
getMaximumSize() (Component), Layout Managers
getMessage(), Throwing Exceptions, Passing Messages
getMethod(), Reflection, Accessing Methods, Putting Reflection to Work
getMethods(), Reflection
getMinimumSize() (Component), Layout Managers
getModifiers() (InputEvent), Mouse and Key Modifiers on InputEvents
getName() (File), File operations
getNextEntry(), Decompressing Data
getNumberInstance() (NumberFormat), The java.text Class
getOutputStream(), Clients, Using the POST Method
getParameter(), Servlet Parameters
Applet class, Applet parameters
getParameterInfo() (Applet), Applet parameters
getParameterNames(), The ShowParameters Servlet
getParent() (File), File operations
getPassword() (JPasswordField), Say the Magic Word
getPath() (File), File operations
getPercentInstance() (NumberFormat), The java.text Class
getPort(), The URLConnection
getPreferredSize()
Component class, Layout Managers
ImageComponent class, The JScrollPane Class
getProperty(), Properties, Default Values
System class, System Properties
getPropertyDescriptors(), Getting Properties information
getProtocol(), The URL Class
getRequestURI(), The ShowParameters Servlet
getResource()
Applet class, Java Archive (JAR) Files, The Image Class
Class class, Loading Application Resources
getResourceAsStream(), Loading Application Resources
getResponseCode(), Using the POST Method
getRGB(), Desktop Colors
getRGBdefault() (ColorModel), Color Models
getRowCount() and getColumnCount() (JTable), Round Two: Creating a Table Model
getScaledInstance(), Scaling and Size
getSelectedText(), The TextEntryBox Application
getSelection() (ButtonGroup), Checkboxes and Radio Buttons
getSession(), The ShowSession servlet
getSoTimeout() (Socket), SO_TIMEOUT
getSource(), More Events and Interfaces
JComponent class, Enabling and Disabling Components
getStringBounds() (Font), Font Metrics
getTargetException() (InvocationTargetException), Accessing Methods
getTcpNoDelay() (Socket), TCP_NODELAY
getter and setter methods (Dial class example), A Dial Component
getText(), TextArea, TextField classes, The TextEntryBox Application
getTimeInstance() (DateFormat), Dates
getValueAt() (JTable), Round Two: Creating a Table Model
getWidth(), Implementing an ImageObserver
Image class, Scaling and Size
GIF data file, notifying user of complete image, Implementing an ImageObserver
GIF89a animations, The Image Class
glue component, BoxLayout
glyphs, Drawing Text
goto statements (C/C++), Statements
GradientPaint class, Color Gradients
grammar parsing, methods, Round Three: A Simple Spreadsheet
graphical buttons (JButton class), HelloJava3: The Button Strikes!
graphical user interfaces (see components, GUI GUIs Swing)
Graphics class, The paintComponent( ) Method
shape-drawing methods, Convenience Methods
graphics context, The Big Picture, Glossary
fields, The Rendering Pipeline
Graphics2D object, acquiring, The Big Picture
grayscale images, BufferedImage Anatomy
GregorianCalendar class, Dates
TimeZone, setting for, Dates
GridBagLayout layout manager, Layout Managers, GridBagLayout, Composite Layouts
columns and rows, spanning, Spanning Rows and Columns
composite layouts, Composite Layouts, Composite Layouts
grid coordinates, Grid Coordinates, Grid Coordinates
GridBagConstraints class, The GridBagConstraints Class
anchoring, Anchoring
fill constraint, The fill Constraint
padding and insets, Padding and Insets, Padding and Insets
relative positioning, Relative Positioning
weighting, Weighting, Calculating the weights of rows and columns
WYSIWYG GUI builder, using in, GridBagLayout
GridLayout layout manager, Layout Managers, GridLayout
guessContentTypeFromName(), The URLConnection
guessContentTypeFromStream(), The URLConnection
GUIs (graphical user interfaces), Enter Java, Swing, Glossary
(see also components, GUI; Swing)
applets, embedding in, The JApplet Class
components, Components
(see also components, GUI)
events and, Events
GUI Beans, Properties and Customizers
Java 2, emphasis on, Enter Java
layout managers, Layout Managers, Layout Managers, Absolute Positioning
GZIP compression format, Data Compression
GZIPInputStream class, Decompressing Data
GZIPOutputStream class, Compressing Data

H

half close option (TCP connections), “Half Close”
handleEvent(), processEvent( )
handlers, content and protocol, Content and Protocol Handlers, Trying it out
Handler class, The URLStreamHandler
hashCode(), The Object Class, Hashcodes and key values
UnicastRemoteObject class, The UnicastRemoteObject class
hashcodes, Glossary
key values and, Hashcodes and key values
HashMap class, WeakHashMap: An Interesting Variation
Hashtables, The Map Interface, Glossary
actions, Putting Reflection to Work
creating (example), Serialization
Hashtable class, Collections
hashcodes and key values, Implementations
Map interface, The Map Interface
properties, Properties
hasMoreElements() (Enumeration), The java.util.StringTokenizer Class
hasMoreTokens() (StringTokenizer), The java.util.StringTokenizer Class
headers, The import Statement
HEAD and doHead() methods, obtaining with, HTTP (Web) Servlets
protocol, using to get content type, The URLConnection
headMap() (SortedMap), The Map Interface
headSet(), Collection Flavors
height
GridBagConstraints, Spanning Rows and Columns
height attribute (HTML), Attributes, The Complete <APPLET> Tag
images, retrieving for, Scaling and Size, Implementing an ImageObserver
lines of text, retrieving for, Font Metrics
HelloJava1 application example, HelloJava1, The paintComponent( ) Method
HelloJava2 application example, HelloJava2: The Sequel, Interfaces
HelloJava3 application example, HelloJava3: The Button Strikes!, Using Color Methods
placing JButton in, Layout
HelloJava4 application example, HelloJava4: Netscape’s Revenge, A Word About Synchronization
helper classes (see adapter classes)
hexadecimal numbers, Integer literals
history of Java, A Java Road Map, Availability
hookup(), Putting Reflection to Work
hookups, event sources to event listeners, Events Hookups and Adapters
HorizBagLayout layout manager, Nonstandard Layout Managers
horizontal boxes, creating, BoxLayout
horizontal scrollbars, display policies, The JScrollPane Class
hostnames, Clients and Servers, Glossary
host IP address, using as alternative, Clients
Internet hostname (URLs), Uniform Resource Locators (URLs)
hosts, security and, Signing Classes
HotJava web browser, A Virtual Machine, Applets and Files, Glossary
content and protocol handlers, installing locally, Web Browsers and Handlers
security rules and levels, defining, Signing Classes
HotJavaBrowser Bean, What’s a Bean?
HotSpot virtual machine, A Virtual Machine
advanced garbage collection, Dynamic Memory Management
hspace attribute (HTML), The Complete <APPLET> Tag
HTML
display in web browser, HTML and RTF for Free, HTML and RTF for Free
documentation for classes, creating with javadoc, Javadoc Comments
HTMLEditorKit class, HTML and RTF for Free
KEYGEN extension, User (signer) certificates
text in JLabel and JButton labels, Buttons and Labels
HTML attributes, Attributes, Loading Class Files
codebase attribute, The Complete <APPLET> Tag
HTML code, clock applet (example), Attributes
HTML Converter, Messy Tags
HTML documents
base URL, Loading Class Files
displaying in JEditorPane, HTML and RTF for Free
embedding applets in, The HeartBeat Applet
naming applets within, Inter-applet communication
printing contents of, Stream Data
HTML forms
adding to servlet output, The ShowParameters Servlet
data, encoding/decoding, Using the POST Method, GET, POST, and the “extra path”
GET and POST encoding, using with, GET, POST, and the “extra path”
name/value pairs (fields), Talking to CGI Programs and Servlets
HTML frames
maintaining applet visibility in, Applet Control
naming for document display, Driving the browser
HTML tags, The JApplet Class, The <APPLET> Tag, Viewing Applets, Glossary
, The JApplet Class, The <APPLET> Tag, Viewing Applets, Glossary
complete syntax, The Complete <APPLET> Tag
disadvantages of, Using the Java Plug-in
JAR files, listing in ARCHIVE attribute, Java Archive (JAR) Files
tags, The <APPLET> Tag
comment tags, Javadoc Comments
Plug-in applets, complexity of, Messy Tags
tag, Messy Tags
tag (Navigator), Messy Tags
HTTP protocol
daemon example, The TinyHttpd Server, Room for improvement
HttpServlet class, HTTP (Web) Servlets
HttpServletRequest class, HTTP (Web) Servlets
HttpServletResponse class, HTTP (Web) Servlets
HttpSession class, User Session Management
requests, servlets for handling, HTTP (Web) Servlets
sockets, opening for connections, The URLConnection
HTTPS (HTTP Secure Socket Layer) protocol, SSL and Secure Web Communications
site certificates and, Site certificates
hue, lightness, saturation (HLS), Color Models
hue, saturation, value (HSV), Color Models
hyperlinks
HyperlinkEvent class, HTML and RTF for Free
responding to, HTML and RTF for Free
hypertext links to class documentation, Javadoc Comments

I

I18N (see internationalization)
icons
Beans, supplying for, Supplying icons
button labels, creating with, Buttons and Labels
ImageIcon class, Buttons and Labels
JFrames, supplying for, Other Methods for Controlling Frames
identifiers for images, Using a MediaTracker
identities, Certificates, Keystores, Keys, and Certificates
database of, Keystores, Keys, and Certificates
database of, managing with keytool, Where We’ve Been
identity (==) operator, More Events and Interfaces
if/else statement, Statements
IIOP (Internet Inter-Object Protocol), RMI and CORBA
IllegalAccessException, The Class Class
IllegalArgumentException, Accessing Constructors
ImageProcessor application (example), Filtering Image Data, How ImageProcessor Works
images, Working with Images and Other Media, Using the AffineTransformOp Class
audio, working with, Working with Audio, Working with Audio
BufferedImage class, BufferedImage Anatomy
application, creating from ARGB pixel values array, Creating an Image
converting to Image, Converting an Image to a BufferedImage
Rasters and ColorModels, BufferedImage Anatomy
BufferedImageOp interface, Filtering Image Data
on buttons, Buttons and Labels
drawing with 2D API, Drawing with the 2D API, Printing, Drawing Images
classes and packages, The Big Picture, The Big Picture
displaying images, Displaying Images, Scaling and Size
drawing techniques, using, Using Drawing Techniques, Offscreen Drawing
filling shapes, Filling Shapes, Desktop Colors
fonts, using, Using Fonts, Font Metrics
offscreen, Offscreen Drawing, Offscreen Drawing
printing, Printing
rendering pipeline, The Rendering Pipeline, The Whole Iguana
stroking shape outlines, Stroking Shape Outlines
filtering image data, Filtering Image Data, Using the AffineTransformOp Class
image operators, Filtering Image Data, Using the AffineTransformOp Class
rescaling, Using the RescaleOp Class
graphics context for drawing, The Big Picture
Image class, The Image Class, Scaling and Size
BufferedImage subclass, BufferedImage Anatomy
image data, producing, Producing Image Data, Updating a BufferedImage
animations, drawing, Drawing Animations, Drawing Animations
color models, Color Models
creating an image, Creating an Image, Creating an Image
updating dynamically, Updating a BufferedImage, Updating a BufferedImage
ImageComponent class, The JScrollPane Class
adding to tab in JTabbedPane, The JTabbedPane Class
creating (example), The JScrollPane Class
JSplitPane, displaying in, The JSplitPane Class
ImageConsumer interface, Glossary
ImageIcon class, Buttons and Labels
ImageObserver, implementing, Implementing an ImageObserver, Implementing an ImageObserver
ImageProducer interface, Glossary
loading class resources for, Loading Application Resources
MediaTracker, using, Using a MediaTracker
movies, working with, Working with Movies, Working with Movies
updating, eliminating problems with double buffering, Double Buffering
imageUpdate() (ImageObserver), Implementing an ImageObserver
implementation classes (Collections Framework), Implementations, Hashcodes and key values
implements clauses, Glossary
implicit casting, Casting
import statements, The import Statement, Glossary
importing classes, Importing Classes
#include statement, import statement vs., The import Statement
incremental class development, Incremental Development
incrementaldraw property, Image Observers
index operator [], Arrays
IndexColorModel class, Updating a BufferedImage
indexed color models, Color Models
indexes (arrays), Arrays
ArrayIndexOutOfBoundsException, Using Arrays
unchecked exceptions and, Checked and Unchecked Exceptions
indexOf(), Searching
indirection, Argument Passing and References
InetAddress class, The HeartBeat applet code
infinite loops, Threads, Running Code in the Thread
inheritance, Syntactic Sweet ‘n’ Low, Inheritance, Interfaces, Glossary
interfaces and, Interfaces
in objects, Objects in Java
private modifier and, Subclassing and Inheritance
single inheritance, Interfaces, Subclassing and Inheritance
subclassing and, Subclassing and Inheritance, Abstract Methods and Classes
abstract classes and methods, Abstract Methods and Classes
casting, Casting
overriding methods, Overriding Methods, Exceptions and overridden methods
shadowing variables, Shadowed Variables
special references, Special References: this and super
superclass constructors, using, Using Superclass Constructors
init()
Applet class, Applet Control
MediaTracker and, Using a MediaTracker
Servlet class, The Servlet Life Cycle
initializations
arrays, Array Creation and Initialization, Array Creation and Initialization
comma-separated expressions in for loop, Statements
constructors, Full Disclosure: Constructors and Initialization
instance variables, nonstatic code blocks and, Static and Nonstatic Code Blocks
local variables, Initializing Local Variables
order of, Statements and Expressions
static class members with static code blocks, Static and Nonstatic Code Blocks
variables, Variable declaration and initialization
initialize(), Creating an Image
inlining final methods and classes, Compiler optimizations
inner classes, Events, Inner Classes, Security implications, Security implications, Glossary
anonymous, Inner Classes, Anonymous inner classes, Putting Reflection to Work
compiling, How do inner classes really work?
creating adapter classes with, Inner Classes
declaring within methods, Inner Classes Within Methods, Security implications
limitations on, Limitations on inner classes
naming, Inner Classes
security, Security implications
static, Static inner classes
visibility modifiers and, Security implications
input dialog, Dialogs
input streams
BufferedInputStream class, Streams, Stream Wrappers, Buffered streams
CryptInputStream class, The Encryption class
DataInputStream class, Streams, Stream Wrappers, Data streams
FileInputStream class, Streams, File Streams
FilterInputStream class, Stream Wrappers, Pipes, The rot13InputStream Class
GZIPInputStream class, Decompressing Data
HttpServletRequest objects, HTTP (Web) Servlets
InputStream class, Streams, Terminal I/O
InputStreamReader class, Streams, Character Streams, File Streams
ObjectInputStream class, Streams, Serialization
objects, order of creation, A Simple Object-Based Server
PipedInputStream class, Streams, Pipes
properties, loading from, Loading and Storing
rot13InputStream class, The rot13InputStream Class, The rot13InputStream Class, The crypt Handler
sockets, retrieving for, Clients
URL connections, Using the POST Method
URLs, retrieving from, Stream Data
ZipInputStream class, Decompressing Data
input/output, Input/Output Facilities, Decompressing Data
data compression, Data Compression, Decompressing Data
file streams, File Streams, File Streams
files, Files, Loading Application Resources
object serialization, Serialization
streams, Streams, The rot13InputStream Class
timers, setting on socket methods, SO_TIMEOUT
InputEvent class, The java.awt.event.InputEvent Class
insert(), The java.lang.StringBuffer Class
insertNodeInto(), A Complete Example
insertString(), Managing Text Yourself
insets, Insets
insets and padding (GridBagLayout), Padding and Insets, Padding and Insets
relationship between, Padding and Insets
instance methods, Classes, Glossary
instance variables, Instance Variables, Variable declaration and initialization, Classes, Glossary
(see also class variables; static variables)
initialization, nonstatic code blocks and, Static and Nonstatic Code Blocks
retriving value of (objects) with dot (.) operator, Variable access
shadowing by local bariables, Shadowing
instanceof operator, The instanceof operator, Casting, The Collection Interface, Getting the Content as an Object, Glossary
instances, Classes and Objects, Classes, Glossary
instance methods, Classes
instantiate() (Beans), Bean Instantiation and Type Management
instantiating objects with new operator, HelloJava3: The Button Strikes!
InstantiationException, The Class Class, Accessing Constructors
int data type, Integer literals, Glossary
array of, declaring, Array Types
in Java switch statements, Statements
parseInt(), Wrappers for Primitive Types
Vector, holding in, Wrappers for Primitive Types
writeInt(), Data streams
integer literals, Integer literals
BigInteger class, The java.math Class
integers, Instance Variables
arithmetic, Java support, Math Utilities
producing from strings, Things from Strings
interfaces, Syntactic Sweet ‘n’ Low, Interfaces, Interfaces, Subinterfaces, Glossary
adapter classes and, Inner Classes
as callbacks, Interfaces as Callbacks
empty, Empty interfaces
multiple inheritance in Java, Syntactic Sweet ‘n’ Low
naming, Interfaces
peer interfaces (AWT), Peers
reference types and, Reference Types
reflection API, dynamic adapters for, Dynamic Interface Adapters
remote, Remote interfaces
subinterfaces, Subinterfaces
variables, Interface Variables
visibility of, Interfaces and Visibility
internal frames, creating in DesktopPane, Desktops
internalFrameClosing(), Desktops
InternalFrameEvent class, Desktops
internationalization, Internationalization, The java.text Class, The java.text Class, Glossary
button labels, Buttons and Labels
date/time formats, Dates
Locale class, The java.util.Locale Class
resource bundles, Resource Bundles
ResourceBundle class, Resource Bundles, Resource Bundles
Internet Explorer
HTML tags for, Messy Tags
Java support, Using the Java Plug-in
signed applets, What about Netscape and Internet Explorer?
viewing Plug-in applets with, Viewing Plug-in Applets
Internet protocol (see IP)
Internet-based computer networks, Future Buzz?
interpreted programming language vs. compiled, Java Compared with Other Languages
interpreter (see java interpreter)
interrupt(), The sleep( ) method
Thread class, The Thread Class, Controlling Threads
InterruptedException, Exceptions, The sleep( ) method
introspection, New Software Development Models
IntrospectionException, Getting Properties information
Introspector class, Customizing with BeanInfo
intValue() (Integer), Wrappers for Primitive Types
invalid containers or components, The revalidate( ) and doLayout( ) Methods
invisible
Beans, Events Hookups and Adapters
creating (example), An invisible multiplier
components in BoxLayout, BoxLayout
invisible applets, Applet Control
InvocationTargetException, Accessing Methods
invoke(), Accessing Methods, Dynamic Interface Adapters, Putting Reflection to Work
invokeAndWait() or invokeLater(), Multithreading in Swing
invokeReflectedMethod() (private), Putting Reflection to Work
IOException, Exceptions and Error Classes, Terminal I/O, The java.io.RandomAccessFile Class, The HeartBeat applet code, Getting the Content as an Object
PrintWriter and PrintStream classes, not throwing, Print streams
IP (Internet protocol), Sockets
addresses, using for hostnames, Clients
isAbsolute() (File), File operations
isDirectory() (File), File operations
isErrorID(), Using a MediaTracker
isFile() (File), File operations
isInstanceOf() (Beans), Bean Instantiation and Type Management
isNaN(), Float or Double class, Math Utilities
ISO character encoding, Glossary
isPopupTrigger(), The PopupMenu Class
isSelected() (JCheckbox), Checkboxes and Radio Buttons
ItemEvents class, Checkboxes and Radio Buttons
iterative statements, Statements
iterator(), BeanContext and BeanContextServices
iterators
Iterator interface, Inner Classes, Iterators
thread safety and, Thread Safety and Iterators
ITV (interactive TV), Java’s Origins

J

J-code, A Virtual Machine
JApplet class, Containers, The JApplet Class, Applets versus standalone applications
control methods, Applet Control
embedding in GUI, The JApplet Class
JAR (Java archive) files, Tools of the Trade, The Class Path, Java Archive (JAR) Files, JAR manifests
archive attribute, specifying with, The Complete <APPLET> Tag
Beans as, Creating a Component with Bindable Properties
compressing, File Compression
manifests, JAR manifests, JAR manifests
signed, Site certificates
jarsigner utility, Signing JARs
keytool and jarsigner utilities, Where We’ve Been
jar utility, The Class Path, The jar Utility
Java
architecture, Future Buzz?
comparison with other programming languages, Java Compared with Other Languages, Java Compared with Other Languages
development environments supporting Java Beans, The BeanBox Application
development, history of, A Java Road Map, Availability
as general application language, Java as a General Application Language
history of, Java’s Origins
JavaScript vs., Java Compared with Other Languages
numbers in, Primitive Types
(see also data types; primitive data types; variables)
online information about, Getting Wired
remote method invocation (see RMI)
scripting, BeanShell, BeanShell: Simple Java Scripting, Learning More . . .
security features
in design, Safety of Design, Scalability
in implementation, Safety of Implementation, Security Managers
versions, event processing in, Old-Style and New-Style Event Processing, Enabling new-style events explicitly
WorkShop, Glossary
World Wide Web and, Java and the World Wide Web, New Software Development Models
Java 2 Enterprise Edition (J2EE), Enterprise JavaBeans
Java 2 platform
API, core features of, The Present: Java 2, The Present: Java 2
Collections Framework, Collections
GIF89a animations, support for, The Image Class
GUIs, emphasis on, Enter Java
SDK, New Developments, Availability
Java Activation Framework (JAF), The Java Activation Framework
content handler, Other Handler Frameworks
downloading from web site, The Java Activation Framework
Java API, packages in, Basic Utility Classes
Java Database Connectivity (JDBC), Glossary
.java extension (source code files), The Java Compiler
Java Foundation Classes (JFC), APIs in, Swing
java interpreter, A Virtual Machine, The Java Interpreter, The Java Interpreter, Glossary
-D option, Proxies and Firewalls
-noasyncgc option, Garbage Collection
finding classes, The Class Path
security manager, installing, The Default Security Manager
Java Media Framework (JMF), Working with Movies
video files, support for, New Kinds of Media
Java Plug-in
applets, Using the Java Plug-in, Viewing Plug-in Applets
code-signing with, What about Netscape and Internet Explorer?
downloading from Java Runtime Environment page, Viewing Plug-in Applets
informing of certificates and permissions, Where We’ve Been
signing object with (TestWrite example), The TestWrite example, The TestWrite example
Java Runtime Environment (JRE)
downloading Java Plug-in, Viewing Plug-in Applets
java.security file, The TestWrite example
Java Servlet API, Implementing Servlets
Java Servlet Development Kit (JSDK), downloading, Implementing Servlets
Java Sound API, Working with Audio
Java-Bean keyword (manifests), JAR manifests
java. hierarchy, Packages
java.applet package, Driving the browser
java.awt.event package, The import Statement, Event Types
java.awt.geom package, Filling Shapes
java.awt.image package, Working with Images and Other Media, Using the AffineTransformOp Class
java.awt.print package, Printing
java.beans.beancontext package, BeanContext and BeanContextServices
java.io package, Input/Output Facilities, Decompressing Data
java.lang package, Exceptions and Error Classes
class hierarchy, Basic Utility Classes
java.lang.reflect package, Reflection
java.net package, Network Programming with Sockets and RMI
java.rmi package, Exceptions and Error Classes
java.security file, editing, The TestWrite example
java.text package, The java.text Class, The java.text Class
java.util.zip package, Data Compression, Decompressing Data
JavaBeans, New Software Development Models, Java Beans, Enterprise JavaBeans, Glossary
architecture, What’s a Bean?
JavaBeans class, New Software Development Models
visual development tools supporting, New Software Development Models
javac compiler, The Java Compiler, The Java Compiler
-d option, The Java Compiler
-D option, System Properties
O option, Compiler optimizations
javadoc program, Javadoc Comments
comments, Javadoc Comments
javap utility, How do inner classes really work?
JavaScript, Java language vs., Java Compared with Other Languages
javax.media and javax.media.protocol packages, Working with Movies
javax.servlet package, Implementing Servlets, HTTP (Web) Servlets
javax.servlet.http package, HTTP (Web) Servlets
javax.swing package, Packages, Swing
user interface component packages, Swing
javax.swing.event package, Event Types
javax.swing.JFrame (see JFrame)
javax.swing.table package, Tables
javax.swing.tree package, Trees
JButton class, HelloJava3: The Button Strikes!, Using Color Methods
icons, creating for, Buttons and Labels
receiving events generated by, More Events and Interfaces
JCheckBox class, Checkboxes and Radio Buttons
JColorChooser class, The Color Chooser
JComboBox class, Lists and Combo Boxes
JComponent class, Inheritance, Components, Components
appearance and functionality of objects, controlling with, Components
invisible Beans and, An invisible multiplier
methods, Other Component Methods
JDesktopPane class, creating and adding internal frame, Desktops
JDK (Java Development Kit), Glossary
(see also SDK)
JEditorPane class (see under editors)
JFileChooser class, File Selection Dialog, File Selection Dialog
JFileDialog class, Path localization
JFrame class, Containers, Windows and Frames
animation component, setting up for, Drawing Animations
BorderLayout layout manager, Layout Managers
buttons, adding with FlowLayout, FlowLayout
content panes for, Using Content Panes
JMenuBar, adding to content pane, Menus
movies, displaying in, Working with Movies
opening windows, The main( ) Method
position on screen, setting, Other Methods for Controlling Frames
JInternalPane class, creating and adding to DesktopPane, Desktops
JLabel class, Buttons and Labels
Bean for text display, converting into, A Bean for displaying text
JList class, Lists and Combo Boxes
data model, using as combo box, Lists and Combo Boxes
JMenu class, Menus
JMenuBar class, Menus
adding to content pane of JFrame, Menus
JMenuItems class, Menus
join(), The join( ) method
Thread class, Controlling Threads
JOLT (Java Open Language Toolkit), web page information about, Availability
JOptionPane class, dialog groupings in, Dialogs
JPanel class, Containers
double buffering , use in, Double Buffering
FlowLayout layout manager, Layout Managers
layout managers for, Layout Managers
JPasswordField class, Say the Magic Word
JPEG data file, image observers and, Implementing an ImageObserver
JPopupMenu class, The PopupMenu Class, The PopupMenu Class
JRadioButton class, Checkboxes and Radio Buttons
JRE (see Java Runtime Environment)
JScrollPane class, Lists and Combo Boxes, The JScrollPane Class, The JSplitPane Class, Scrollbars and Sliders
application displaying large image, The JScrollPane Class
ImageComponents, wrapping in, The JSplitPane Class
JTextArea, fitting within, The TextEntryBox Application
JSplitPane class, The JSplitPane Class
JTabbedPane class, The JTabbedPane Class, The JTabbedPane Class
JTextArea class, Text Components
JTextComponent class, Text Components
JTextField class, Text Components
NumericField and, A Bean for validating numeric data
JTextPane class, HTML and RTF for Free
attribute sets, creating and adding for plain and styled text, Managing Text Yourself
JToolBar class, HTML and RTF for Free
Juggler Bean (example), Properties and Customizers
adding dialable animation rate, Creating a Component with Bindable Properties
just-in-time compilation, A Virtual Machine
justification, rows in FlowLayout, FlowLayout
JWindow class (see under windows)

K

key values
hashcodes and, Hashcodes and key values
Hashtable class, Collections
maps, The Map Interface
WeakHashMap, WeakHashMap: An Interesting Variation
keyboard focus, Focus, Please
keyboard presses
KeyEvents, describing, Components
modifiers on InputEvents, Mouse and Key Modifiers on InputEvents
KeyEvent class, Events, Menus
KEYGEN extension to HTML, User (signer) certificates
keystores, The TestWrite example, Keystores, Keys, and Certificates, Signing JARs
public/private key entries, Public and private keys
KeyStroke class, Menus
keytool utility, Where We’ve Been
Certificate Signing Request (CSR), generating, Certificates
importing certificate with, The TestWrite example
user interface awkwardness, Signed JAR Files: The keytool and jarsigner Utilities

L

labels, Buttons and Labels, Buttons and Labels
font or color, changing, Buttons and Labels
HTML-formatted text in, Buttons and Labels
internationalizing, Buttons and Labels
JLabel class, Buttons and Labels
tick marks, Scrollbars and Sliders
languages, The java.util.Locale Class
(see also internationalization)
comparing strings in different, The Collator class
international access, Unicode character encoding, Text Encoding
language code, Locale class, The java.util.Locale Class
text for applications (ResourceBundle), Resource Bundles
last(), Collection Flavors, CardLayout
lastIndexOf(), Searching
lastModified(), File operations
Latin-1 character encoding, Glossary
layout managers, Layout, Layout Managers, Layout Managers, Absolute Positioning, Glossary
absolute positioning and, Absolute Positioning
BorderLayout, BorderLayout, BorderLayout
BoxLayout, BoxLayout
CardLayout layout manager, CardLayout
FlowLayout, Layout, FlowLayout
GridBagLayout, GridBagLayout, Composite Layouts
GridLayout, GridLayout
insets, Insets
nonstandard, Nonstandard Layout Managers
revalidating or redoing layout, The revalidate( ) and doLayout( ) Methods
stacking components (Z-ordering), Z-Ordering (Stacking Components)
leading space of fonts, Font Metrics
left-shift (<<) operator, Creating an Image
length (arrays), Arrays, Using Arrays
length()
File class, File operations, File Streams
RandomAccessFile class, The java.io.RandomAccessFile Class
String class, String Constructors
lexical comparision of strings, Comparisons
lightweight components (Swing), Peers, Glossary
limit and value pairs, The java.text Class
limiting redrawing in image updates, Limited Redrawing
line comments in Java, Comments
LineBorder class, Borders
LineMetrics class
font sizing and spacing, Font Metrics
methods for obtaining font metrics, Font Metrics
lines (shape outlines), thickness, dashing, and end styles, Stroking Shape Outlines
lingering before closing active socket connection, SO_LINGER
linked lists, Argument Passing and References
LinkedList class, Implementations
Lisp programming language
dynamic data typing, Type Safety and Method Binding, Types
Java, comparison to, Java Compared with Other Languages
List interface, Collection Flavors
list()
File class, File operations
Properties class, Loading and Storing
listeners, Events, Components, The Model/View/Controller Framework, Events, Event Receivers and Listener Interfaces, Tree Events
(see also individual listener names)
ActionListener, registering, Menus
adapter classes and, Adapter Classes, Dummy Adapters, Events Hookups and Adapters, Events Hookups and Adapters
dummy adapters, Dummy Adapters
interfaces and handler methods, Event Summary, Event Summary
tree events, Tree Events
listFiles() (File), File operations
listing available Bean services (application example), BeanContext and BeanContextServices, BeanContext and BeanContextServices
ListIt class (example), File Streams
ListModel class, Lists and Combo Boxes
ListResourceBundle class, Resource Bundles
listRoots() (File), Path localization
lists, Lists and Combo Boxes, Lists and Combo Boxes
creating (example), Lists and Combo Boxes
implementation classes, Implementations
selection model, Lists and Combo Boxes
Vector class, Collections
load(), Loading and Storing
loadFile(), File Selection Dialog
loading
class files, Loading Class Files
class resources, Loading Application Resources, Loading Application Resources
classes dynamically, Dynamic class loading
classes with class loaders, Class Loaders
Loading message, displaying for image, Using a MediaTracker
local variables, Instance Variables, Variable declaration and initialization, Local Variables, Glossary
initializing, Initializing Local Variables
shadowing of instance variables, Shadowed Variables
locales
Locale class, The java.util.Locale Class
specifying for NumberFormat class, The java.text Class
location
components in windows, BorderLayout
of servlets, requesting, The ShowParameters Servlet
setting for JFrame, Windows and Frames
locking classes, A Word About Synchronization
LoggerDaemon class (example), Pipes
logical font names, Using Fonts
long data type, Integer literals, Glossary
parseLong(), Wrappers for Primitive Types
longjmp() statements in C, Exceptions
longValue(), Wrappers for Primitive Types
look-and-feel (L&F)
application components, Peers
pluggable, Pluggable Look-and-Feel, Pluggable Look-and-Feel
lookup() (Naming), An RMI Example
loop() (AudioClip), Working with Audio
loops, avoiding infinite, Threads
lowercase names in properties sheets, Design patterns for properties

M

MacOS look-and-feel (L&F), Pluggable Look-and-Feel
main(), The main( ) Method, Constructors, The Java Interpreter, An RMI Example
Dial class, A Dial Component
Main-Class value, adding to manifests, JAR manifests
major tick marks, Scrollbars and Sliders
make utility, Syntactic Sweet ‘n’ Low, The Java Compiler
makeMenuItem(), The PopupMenu Class
malloc in C/C++, Initializing Local Variables
manifests (JAR files), JAR manifests, JAR manifests
Bean classes in, Creating a Component with Bindable Properties
signature files and, Signing JARs
maps
casting, The Map Interface
HashMap class, WeakHashMap: An Interesting Variation
Map interface, The Map Interface
SortedMap interface, The Map Interface
WeakHashMap class, WeakHashMap: An Interesting Variation
margins (containers), specifying, Insets
mark and sweep garbage collector, Dynamic Memory Management, Garbage Collection
mark() (BufferedInputStream), Buffered streams
marshalling data, Simple Serialized Object Protocols
masks (events), Old-Style and New-Style Event Processing, Enabling new-style events explicitly
match(), Round Three: A Simple Spreadsheet
math utilities, Math Utilities, Random Numbers
java.math package, The java.math Class
Math class, Math Utilities
methods, summary of, The java.lang.Math Class
Random class, Random Numbers
wrappers for primitive types, Wrappers for Primitive Types
MatteBorder class, Borders
MediaTracker class, The JScrollPane Class, Using a MediaTracker
member variables, Instance Variables
members (classes), static, Static Members, Static Members
memory
dynamic management in Java, Dynamic Memory Management
garbage collection, role in management, Garbage Collection
menus, Menus, Menus
accelerators, Menus
JMenu class, Menus
JMenuBar class, Menus
JMenuItems class, Menus
mnemonics, Menus
PopupColorMenu class, The PopupMenu Class, The PopupMenu Class
PopupMenu class, The PopupMenu Class, The PopupMenu Class
Quit menu item, Menus
Spices menu (example), Menus
submenus, Menus
Utensils menu (example), Menus, Menus
message dialog, Dialogs
message digests, Glossary
SHA and MD5, JAR manifests
MessageFormat class, The java.text Class
messages, logging with piped streams, Pipes
META-INF directory, JAR manifests
digital signatures and, JAR manifests
Metal look-and-feel, Pluggable Look-and-Feel
method signature, The Java Interpreter
methods, Classes, Statements, Classes, Methods, Method Overloading, Glossary
(see also instance methods; static modifier)
abstract, Abstract Methods and Classes
accessing, Accessing Fields and Methods
applet API, summary of, Applets versus standalone applications
arguments (see arguments)
Beans class, Bean Instantiation and Type Management
binding to definitions
early-binding, Type Safety and Method Binding
late-binding in Java, Type Safety and Method Binding
callbacks, Interfaces as Callbacks
Class class, Reflection
Collection interface, The Collection Interface
Collections class, Slam Dunking with Collections
constructor methods (see constructors)
deprecated methods, Javadoc Comments
exceptions, Bubbling Up
(see also exceptions)
declaring, Exceptions, Checked and Unchecked Exceptions
tracing to origin, Bubbling Up
File class, File operations, File operations
font metrics, obtaining, Font Metrics
hooking to events, Events Hookups and Adapters
inheritance, Subclassing and Inheritance
(see also inheritance)
inner classes, declaring within, Inner Classes Within Methods, Security implications
instance, Classes
invoking, Method invocation
JComponent class, Other Component Methods
Math class, The java.lang.Math Class
Method class, Accessing Methods
modifiers, The paintComponent( ) Method
native, Packages, Glossary
Object class, The Object Class
overloading, Method Overloading, Method Overloading, Method Overloading, Glossary
equals(), Equality and Equivalence
print(), Method Overloading
overriding, The Thread Class, Overriding Methods, Exceptions and overridden methods, Glossary
compiler optimizations, Compiler optimizations
dynamic binding and, Overridden methods and dynamic binding
dynamic selection and performance, Dynamic method selection and performance
exceptions and, Exceptions and overridden methods
static binding, Static method binding
visibility and, Subclasses and Visibility
passing objects to, Reference Types
pointers to, lacking in Java, Dynamic Memory Management
private methods, Using Color Methods
remote invocation (see remote method invocation)
scripted (BeanShell), Scripted Methods and Objects
SecurityManager class, The Security Manager
selection
casting and, Casting
among overloaded and overridden, Method selection revisited
serializing, Serializing Access to Methods
shapes, drawing and filling, Convenience Methods
static, Static Members, Static Members, Static Methods
main(), The Java Interpreter
String class, summary of, String Method Summary
visibility of, Visibility of Variables and Methods, Interfaces and Visibility
Microsoft
Internet Explorer (see Internet Explorer)
Word, use of RTF in documents, HTML and RTF for Free
MIDI music files, playing, Working with Audio
MIME types (Multipurpose Internet Mail Extensions), Getting the Content as an Object, Writing a Content Handler
DataSource, determining for data stream, The Java Activation Framework
determining for servlet output, Content Types
mapping into class names, Locating Content Handlers
URLs, determining for, The URLConnection
minor tick marks, Scrollbars and Sliders
MissingResourceException, Resource Bundles
mkdir(), mkdirs(), File operations
mnemonics, Menus
creating, Menus
modal dialogs, Dialogs
mode of files (read/write), specifying, The java.io.RandomAccessFile Class
Model-View-Controller (MVC) framework, Observers and Observables, The Model/View/Controller Framework, Glossary
data, viewing in different ways, Sharing a Data Model
text components, implementation of, Text Components
modification times, The Java Compiler
files and directories, File operations
modifiers, The paintComponent( ) Method, Glossary
events, Mouse and Key Modifiers on InputEvents
synchronized modifier, A Word About Synchronization
monitor variables, using with threads, Deprecated methods
monitors, Synchronization
more(), Round Three: A Simple Spreadsheet
Motif look-and-feel (Java SDK), Pluggable Look-and-Feel
mouse
modifiers on InputEvents, Mouse and Key Modifiers on InputEvents
MouseAdapter class, Dummy Adapters
MouseEvent class, Events
MouseEvents class, Events
MouseEvents within components, Components
MouseListener interface, Event Receivers and Listener Interfaces
MouseMotionListener interface, Interfaces, More Events and Interfaces, Event Receivers and Listener Interfaces
moving, without pressing button, Events
popup menus and, The PopupMenu Class
mouseDrag(), eliminating unnecessary image update actions, Limited Redrawing
mouseDragged(), Events
mouseMoved(), Events
mousePressed(), mouse-Released(), and mouseClicked() methods, The PopupMenu Class
movies, working with, Working with Movies, Working with Movies
URLs for movies, passing in command line, Working with Movies
multicast sockets, MulticastSocket class, Sockets
multidimensional arrays, Multidimensional Arrays
multiline text editor, Text Components
multimedia
audio, working with, Working with Audio, Working with Audio
Java capabilities for, New Kinds of Media
Java Media Framework (JMF), Working with Movies
movies, working with, Working with Movies, Working with Movies
multiple inheritance, interfaces providing advantages of, Interfaces
Multiplier Bean
combining with TextLabels and NumericFields Beans, Putting them together
example, An invisible multiplier
Multipurpose Internet Mail Extensions (see MIME types)
multithreading, Threads
requests, servlet handling of, The Servlet Life Cycle
Swing components and, Multithreading in Swing
MutableTreeNode interface, Nodes and Models
MVC (see Model-View-Controller framework)

N

Nagle’s algorithm, turning off, TCP_NODELAY
names
anonymous inner classes, Anonymous inner classes
applets
code attribute, specifying with, Loading Class Files
name attribute of tag, Inter-applet communication
dot-separated hierarchy (properties), Properties
files, localization of, Path localization
fonts, Using Fonts
HTML frames for displaying documents, Driving the browser
inner classes, Inner Classes
interfaces, Interfaces
name attribute (HTML), The Complete <APPLET> Tag
Naming class, The RMI registry
packages, Package Names
incorporating Internet host and domain names, Packages
preceding class files, Packages
remote interfaces, An RMI Example
NaN (not a number) (value), Glossary
narrowing object types, The Collection Interface, The Map Interface
narrowing reference types, Casting
native methods, A Virtual Machine, Packages, Glossary
native threads, Native Threads
nesting
classes, Inner Classes
comments, Comments
Netscape
JavaScript, Glossary
information about, Java Compared with Other Languages
Navigator
encryption keys, managing with KEYGEN, User (signer) certificates
HTML tags for, Messy Tags
Java, support for, Using the Java Plug-in
signed applets, What about Netscape and Internet Explorer?
viewing Plug-in applets with, Viewing Plug-in Applets
Network Filesystem (NFS), Datagram Sockets
networks, Network Programming with Sockets and RMI, RMI and CORBA
applets, communication with, Applets and Files
byte order, The DateAtHost Client
clients and servers, Clients and Servers, Room for improvement
connections, limiting with default security manager, The Default Security Manager
exceptions for, Exceptions and Error Classes
firewalls, Proxies and Firewalls
Internet-based computer systems, Future Buzz?
network protocols, Simple Serialized Object Protocols
Network Time Protocol (NTP), The DateAtHost Client
RMI, Remote Method Invocation (RMI), RMI and CORBA
serialized object protocols, Limitations
sockets, Network Programming with Sockets and RMI, Sockets, Proxies and Firewalls
software development for, Yet Another Language?
new operator, Variables and Class Types, HelloJava3: The Button Strikes!, Operators, Object creation, Glossary
anonymous inner classes, Anonymous inner classes
creating objects with, Constructors
multidimensional arrays and, Multidimensional Arrays
objects, creating, Classes
newAudioClip() (Applet), Working with Audio
newInstance(), The Class Class
Class class, Accessing Constructors, The URLConnection
newline, adding to end of strings, Print streams
NewtonScript language, security risks, Safety of Implementation
next(), CardLayout
nextDouble() (Random), Random Numbers
nextElement() (Enumeration), The java.util.StringTokenizer Class
nextGaussian() (Random), Random Numbers
nextToken() (StringTokenizer), The java.util.StringTokenizer Class
NFS server, applets and applications working with files on, Applets and Files
nodes
adding new into tree, A Complete Example
expanding, collapsing, and selecting, Save a Tree
nonexistent files, Getting the Content as an Object
nonstandard layout managers, Nonstandard Layout Managers
nonstatic code blocks, Static and Nonstatic Code Blocks
not (!) operator, Running Code in the Thread
notify(), The wait() and notify( ) Methods
notifyAll(), The wait() and notify( ) Methods, Passing Messages
notifyObservers(), Observers and Observables
null (value), Glossary
character, Variable declaration and initialization
instance of, not considered as, The instanceof operator
instance variables, setting to, Instance Variables
NullPointerException, Variables and Class Types
reference types, The null value
NullPointerException, Variables and Class Types, Dates
numbers, Primitive Types
(see also primitive data types; variables)
BigDecimal class, The java.math Class
floating-point, Floating-point literals
NumberFormat class, The java.text Class
NumberFormatException, Things from Strings, Wrappers for Primitive Types
numeric data, Bean for validating, A Bean for validating numeric data
randomly generated, Random Numbers
validating data with beans (example), A Bean for validating numeric data
NumericFields Bean, combining with TextLabels and Multiplier Beans, Putting them together

O

O option (javac), Compiler optimizations
object attribute (HTML), The Complete <APPLET> Tag
object or code attributes ( tag), Attributes
tag
Internet Explorer, Messy Tags
object-oriented programming
late method binding, Type Safety and Method Binding
polymorphism principle, Method Overloading, Subclassing and Subtypes
scripting languages vs., Java Compared with Other Languages
objects, Classes and Objects, Objects in Java, Finalization, Glossary
(see also instances)
Array vs. others in Java, Arrays
casting (see casting polymorphism)
classes and, Classes and Objects
collections of, The Collection Interface
creating, Object Creation, Static and Nonstatic Code Blocks
constructors, Constructors
creating with new operator, Constructors, Object creation
design methodology, Objects in Java
destroying, Object Destruction, Finalization
finalization, Finalization
garbage collection, Garbage Collection
getting URL content as, Getting the Content as an Object, Getting the Content as an Object
mapping to databases (Entity Beans), Enterprise JavaBeans
methods and variables, accessing, The paintComponent( ) Method
new operator, instantiating with, HelloJava3: The Button Strikes!
Object class, Relationships and Finger Pointing, The Object Class
array classes and, Arrays and the Class Hierarchy
cloning, Cloning Objects, Cloning Objects
equality vs. equivalence of, Equality and Equivalence
hashcodes, Hashcodes
ObjectInputStream class, Streams, Serialization
ObjectOutputStream class, Streams, Serialization, Clients
primitive data types vs., Primitive Types
reference types and, Reference Types
references to (Java), Dynamic Memory Management
remote vs. non-remote, Remote and Non-Remote Objects
runtime information about (Java), Types
scripted (BeanShell), Scripted Methods and Objects
serialization, Serialization, Clients, Limitations
(see also serialization)
JavaBeans architecture, What’s a Bean?
serialized object protocols, Simple Serialized Object Protocols, Limitations
observables
Observable class, Observers and Observables
Swing, event sources as, The Model/View/Controller Framework
observers
ImageObserver interface, Implementing an ImageObserver, Implementing an ImageObserver
Observer interface, Observers and Observables
Swing, event listeners as, The Model/View/Controller Framework
octal numbers, Integer literals
off-screen drawing, Offscreen Drawing, Offscreen Drawing
double buffering, use in, Double Buffering
openConnection(), Getting the Content as an Object
Handler class, The URLStreamHandler
URL class, Using the POST Method
openStream() (URL), Stream Data, Getting the Content as an Object
operating systems, The Class Path
(see also Unix, Windows, and Solaris operating systems)
class path environment variables, The Class Path, The Class Path
operators
== (equal) operator, More Events and Interfaces
comma (,) in C, Statements, Operators
image operators, Filtering Image Data
new, Variables and Class Types, HelloJava3: The Button Strikes!, Operators, Glossary
creating objects with, Constructors
not (!) operator, Running Code in the Thread
overloaded, A Word About Strings, Method Overloading
precedence, maintaining in spreadsheet, Round Three: A Simple Spreadsheet
string concatenation (+) operator, Operators
strings, comparing for equality, Comparisons
supported by Java, Operators
ternary operator, Running Code in the Thread
optimizing code, compilers, A Virtual Machine, Compiler optimizations
option dialogs, Dialogs
examples, Dialogs
order of evaluation, Statements and Expressions
OrientableFlowLayout layout manager, Nonstandard Layout Managers
out of bounds values, returning instead of throwing exceptions, Performance Issues
output streams
BufferedOutputStream class, Streams, Buffered streams
DataOutputStream class, Streams, Data streams
FileOutputStream class, Streams, File operations, File Streams
FilterOutputStream class, Stream Wrappers, Pipes
GZIPOutputStream class, Compressing Data
HttpServletResponse objects, HTTP (Web) Servlets
ObjectOutputStream class, Streams, Serialization
objects, order of creation, A Simple Object-Based Server
OutputStream class, Streams
OutputStreamWriter class, Streams, Character Streams
wrapping FileOutputStream with, File Streams
PipedOutputStream class, Streams, Pipes
PrintWriter class, wrapping, Print streams
properties table, saving to, Loading and Storing
sockets, retrieving for, Clients
System.out and System.err, Terminal I/O
URL connections, Using the POST Method
ZipOutputStream class, Compressing Data
overloading
constructors, Working with Overloaded Constructors, Working with Overloaded Constructors
methods, Method Overloading, Method Overloading, Method Overloading, Glossary
add(), Layout Managers
append() (StringBuffer), The java.lang.StringBuffer Class
casting and, Casting
equals(), Equality and Equivalence
print(), Method Overloading
operators, A Word About Strings, Method Overloading, String Constructors
overriding methods, The Thread Class, Overriding Methods, Exceptions and overridden methods, Glossary
casting and, Casting
compiler optimizations, Compiler optimizations
component size, Layout Managers
dynamic binding and, Overridden methods and dynamic binding
exceptions and, Exceptions and overridden methods
overloaded methods vs., Method Overloading
static binding, Static method binding
subclasses, visibility and, Subclasses and Visibility

P

pack(), Using Content Panes, Layout Managers
packages, Syntactic Sweet ‘n’ Low, Packages, Packages, Glossary
compilation units and, Packages and Compilation Units, The Unnamed Package
core, Java platform, Packages
drawing, classes for, The Big Picture
importing, The import Statement
Java API, Basic Utility Classes
naming, Package Names
protocols into names for, Locating Protocol Handlers
scalability and, Scalability
unnamed, The Unnamed Package
padding and insets (GridBagLayout), Padding and Insets, Padding and Insets
relationship between, Padding and Insets
padding, HTML attribute for, The Complete <APPLET> Tag
paint(), Painting
Component class, The Big Picture
ImageComponent class, The JScrollPane Class
JApplet class, The JApplet Class
paintComponent(), The paintComponent( ) Method, The repaint( ) Method, Painting
declaration of, Variables and Class Types
Dial class (example), A Dial Component
panels, Layout Managers
(see also JPanel class)
displaying multiple in BorderLayout, BorderLayout
Panel class, Relationships and Finger Pointing
tag, Glossary
parameters
applets, Applet parameters
tag, Parameters
polymorphism, Method Overloading
servlets, ShowParameters (example), The ShowParameters Servlet
parent directory of a file, File operations
parse()
NumberFormat class, The java.text Class
ParseException, Throwing Exceptions, Dates, Buffered streams
parseInt() (Integer), The Pulse server code
parseURL(), The URLStreamHandler
parsing
equations, Round Three: A Simple Spreadsheet
methods for, Round Three: A Simple Spreadsheet
protocols, URLs, Stream Handlers, and Connections
streams, exceptions, Buffered streams
string of text into words or tokens, The java.util.StringTokenizer Class
tar files, Constructing the object
URLs, The URL Class
URLs (crypt), The crypt Handler
passing arguments to methods, Argument Passing and References
passing by copy, nonremote object, Remote and Non-Remote Objects
passing by reference
reference types, Reference Types
remote objects, Remote and Non-Remote Objects
passing by value, Reference Types
primitive data types, Reference Types
primitive data types in method arguments, Argument Passing and References
passwords
JPasswordField class, Say the Magic Word
for keystores, The TestWrite example
paths, The Class Path, Loading Application Resources
(see also class paths)
absolute and relative, Loading Application Resources
components of, getting, File operations
converting to URLs, File operations
cookie deployment, specifying for, Cookies
files, names for, File constructors
GeneralPath class, Drawing Animations
localizing, Path localization
URLs, Uniform Resource Locators (URLs)
pattern strings, The java.text Class
pausing threads, Deprecated methods
peer interfaces, Peers, The Model/View/Controller Framework
AWT system, Peers
performance
array bounds checking and, A Virtual Machine
AWT lightweight components and, Why the Move from AWT to Swing?
dynamic method selection and, Dynamic method selection and performance
encryption, Using Digital Signatures
scaling images and, Scaling and Size
Perl scripting language, Java Compared with Other Languages
data types, Types
persistence (remote objects), RMI Object Activation
personal digital assistants (PDAs), Java’s Origins
PI value, The java.lang.Math Class
PipedInputStream class, Streams, Pipes
PipedOutputStream class, Streams, Pipes
PipedReader class, Streams, Pipes
PipedWriter class, Streams, Pipes
pixels, Implementing an ImageObserver
assigning RGB value, Creating an Image
colors, methods of representing, BufferedImage Anatomy
values, arrays of (Raster), BufferedImage Anatomy
platform independence, AWT, Swing
play() (AudioClip), Working with Audio
Player interface, Working with Movies
Plug-in applets, Using the Java Plug-in, Viewing Plug-in Applets, What about Netscape and Internet Explorer?
(see also Java Plug-in)
HTML tags, complexity of, Messy Tags
pluggable look-and-feel (PLAF), Pluggable Look-and-Feel
point size (fonts), Using Fonts
policy files, Policy Files, Using a Policy File with the Default Security Manager
creating with policytool, The policytool Utility, The policytool Utility
SDL, The TestWrite example
enabling signed applets to write files, The TestWrite example
using with default security manager, Using a Policy File with the Default Security Manager
polygons, drawing, Convenience Methods
polymorphism, Method Overloading, Method Overloading
in Java, Types
sub-type, Overriding Methods
subclassing and, Subclassing and Subtypes
PopupColorMenu class, The PopupMenu Class, The PopupMenu Class
port numbers, Clients and Servers
exported objects, listening on random, The UnicastRemoteObject class
rules for using, Servers
specifying for server, The Pulse server code
portability
fonts, Using Fonts
Java code, A Virtual Machine
programming languages, need for, Yet Another Language?
positioning components, Relative Positioning
POST method, Talking to CGI Programs and Servlets
doPost(), correspondence to, HTTP (Web) Servlets
requests, accepting, The ShowParameters Servlet
security, adding, SSL and Secure Web Communications
using (application example), Using the POST Method, Using the POST Method
web browsers, passing information with, GET, POST, and the “extra path”
postData(), Using the POST Method
precedence (operators), Operators, Round Three: A Simple Spreadsheet
preferred size
containers, Layout Managers
HTML attribute for, The Complete <APPLET> Tag
prepareImage(), Implementing an ImageObserver
preprocessor, lacking in Java, Syntactic Sweet ‘n’ Low
previous(), CardLayout
primitive data types, Types, Character literals, Reference Types, Glossary
arrays, wrappers for, BufferedImage Anatomy
boolean, Glossary
byte, Glossary
char, Glossary
data input/output streams, reading/writing with, Data streams
double, Floating-point literals, Glossary
float, Floating-point precision, Floating-point literals, Glossary
int, Integer literals, Glossary
Java specifying sizes of, A Virtual Machine
long, Integer literals, Glossary
Math class methods, working with, The java.lang.Math Class
passing by value in method arguments, Argument Passing and References
producing from strings, Things from Strings
resemblance to C types, Primitive Types
short, Glossary
streams for reading/writing, Streams
wrappers for, Accessing Methods, Wrappers for Primitive Types
print(), Print streams
Printable interface, Printing
PrintStream class, Method Overloading
PrintWriter class, Pipes
printDialog(), Printing
PrinterJob class, Printing
printing
HTML file contents, Stream Data
Printing API, Java 2, Printing
PrintStream class, Print streams
PrintWriter class, Streams, Print streams, Pipes
wrapping FileOutputStream, File Streams
PrintWriter, creating for URL connection, Using the POST Method
println(), The java.lang.StringBuffer Class, Print streams, The URLConnection
printStackTrace(), Bubbling Up
prioritizing image loading by ID value, Using a MediaTracker
priority of threads, Scheduling and Priority
private modifier, Safety of Implementation, The paintComponent( ) Method, Accessing Fields and Methods, Interfaces and Visibility, Glossary
methods, Using Color Methods
methods and variables, Basic Access Modifiers
private-key cryptography, Using Digital Signatures
processes, threads vs., Threads
processEvent(), processEvent( )
processing images, ImageProcessor application, Filtering Image Data, How ImageProcessor Works
producer threads, Passing Messages
programming for the Web, Programming for the Web, Cookies
programming languages
Java, comparison with other, Java Compared with Other Languages, Java Compared with Other Languages
methods, binding to definitions, Type Safety and Method Binding
type safety and method binding, Type Safety and Method Binding
progress indicator for downloads, Multithreading in Swing
properties, Properties, Observers and Observables
Beans, Properties and Customizers, Properties and Customizers
bound, Creating a Component with Bindable Properties, Design patterns for properties
constrained, Constrained Properties
Properties class, Properties
Properties table, Loading and Storing
system, System Properties
property editors (Beans), Properties and Customizers
creating, Creating customizers and property editors
propertyChange(), Constrained Properties
PropertyChangeEvent class, Generating Events, Events Hookups and Adapters
adding to Beans, Creating a Component with Bindable Properties
PropertyDescriptor class, Getting Properties information
propertyNames(), Properties
PropertyResourceBundle class, Resource Bundles
PropertyVetoException, Constrained Properties
protected modifer, Accessing Fields and Methods
protected modifier, Basic Access Modifiers, Interfaces and Visibility
protocol handlers, Getting the Content as an Object, Glossary
identifying source MIME type, Writing a Content Handler
web browsers and, Web Browsers and Handlers, Writing Content and Protocol Handlers
writing, Writing Content and Protocol Handlers, Writing a Protocol Handler, Trying it out
crypt handler, The crypt Handler, Trying it out
locating protocol handlers, Locating Protocol Handlers
URLs, Stream Handlers, and Connections, URLs, Stream Handlers, and Connections
protocols, Uniform Resource Locators (URLs)
provider packages, Signed JAR Files: The keytool and jarsigner Utilities
Proxy class, Dynamic Interface Adapters
proxy servers, Sockets and security, Proxies and Firewalls
public domain layout managers, web site for, Nonstandard Layout Managers
public modifier, The paintComponent( ) Method, Accessing Fields and Methods, Class Visibility, Interfaces and Visibility, Glossary
classes, Class Visibility
classes in source code files, The Java Compiler
combining with static modifier, The Java Interpreter
methods and variables, Basic Access Modifiers
public-key cryptography, SSL and Secure Web Communications, Using Digital Signatures, Glossary
certificate authority (CA), use of, Certificate authority (CA) certificates
public/private encryption keys, Public and private keys
storing in keystore, The TestWrite example
putMessage(), Passing Messages
putNextEntry(), Compressing Data
Python scripting language, Java Compared with Other Languages

Q

Quit menu item, Menus
quotes (“”), parameter names and values, Parameters

R

radio buttons, Checkboxes and Radio Buttons, Checkboxes and Radio Buttons
Cheese menu example, using with, Menus
DriveThrough application (example), Checkboxes and Radio Buttons
grouping with ButtonGroup class, Checkboxes and Radio Buttons
random numbers, Random Numbers
Random class, Math Utilities
random() (Math), Random Numbers
RandomAccessFile class, File Streams, The java.io.RandomAccessFile Class
Raster class, BufferedImage Anatomy
static methods for creating Rasters, Updating a BufferedImage
re-throwing exceptions, Re-throwing exceptions
read()
FilterInputStream class, The rot13InputStream Class
InputStream, Terminal I/O, Clients
InputStream class, Abstract Methods and Classes
PipedInputStream class, Pipes
RandomAccessFile class, The java.io.RandomAccessFile Class
read-only and write-only properties (JavaBeans), Design patterns for properties
read-only files, File operations, The java.io.RandomAccessFile Class
read-write files, The java.io.RandomAccessFile Class
readability, checking for, File operations
readDouble() (DataInputStream), Data streams
readers
BufferedReader class, Streams, Character Streams, Buffered streams
FileReader class, Streams, File Streams
FilterReader class, Stream Wrappers
InputStreamReader class, Streams, Character Streams
wrapping FileInputStream, File Streams
PipedReader class, Streams, Pipes
Reader class, Streams
StringReader class, Strings to Streams and Back
readLine() (BufferedReader), Character Streams, Pipes
readObject() (ObjectInputStream), Serialization
readUTF() (DataInputStream), Data streams
realize(), Working with Movies
RealizeCompleteEvent class, Working with Movies
rebind() (Naming), An RMI Example
Rectangle2D class, Filling Shapes
recurring tasks, Timers
red, green, and blue (RGB), Color Models
(see also ARGB)
creating colors with, Static Members
images, BufferedImage Anatomy
values, representing colors, Color Models
redrawrate property, Image Observers
reference (&) operator, Operators
reference data types, Reference Types, A Word About Strings, Glossary
null value, assigning to, The null value
references, Reference Types
accessing object members through, Accessing Fields and Methods
casting, Casting
class-type variables as, Variables and Class Types
passsing arguments to methods, Argument Passing and References
pointers vs., Dynamic Memory Management
special, this and super, Special References: this and super
super reference, Shadowed Variables
this reference, Constructors, Image Observers
weak (WeakHashMap), WeakHashMap: An Interesting Variation
reflection, New Software Development Models, Putting Reflection to Work, Runtime Event Hookups with Reflection, Glossary
Bean information, gathering, Customizing with BeanInfo
JavaBeans architecture, What’s a Bean?
runtime event hookups, Runtime Event Hookups with Reflection
security problems with use, Safety Implications
reflection API, Reflection, The BeanShell application
arrays, creating and inspecting, What About Arrays?
Bean methods, finding information about, Design patterns for properties
constructors, accessing, Accessing Constructors
dynamic interface adapters, Dynamic Interface Adapters
fields, accessing, Accessing Fields
methods, accessing, Accessing Methods
security, Security
uses of, What Is Reflection Good for?
registry, RMI, The RMI registry
registering objects with, An RMI Example
relationships among classes, Relationships Among Classes, Security implications
inner classes, Inner Classes, Security implications
interfaces, Interfaces, Subinterfaces
subclassing and inheritance, Subclassing and Inheritance, Abstract Methods and Classes
relative paths, File constructors, File operations, Loading Application Resources
class package names, converting to, Packages
relative positioning (GridBagLayout), Relative Positioning
relative URLs, Uniform Resource Locators (URLs)
remote interfaces, Remote interfaces
Remote interface, defining, An RMI Example
WorkListener (example), Passing remote object references
remote method invocation (RMI), Remote Method Invocation (RMI), RMI and CORBA, Glossary
remote objects, The UnicastRemoteObject class
(see also UnicastRemoteObject class)
activation, RMI Object Activation
example, An RMI Example, Passing remote object references
references, passing, Passing remote object references, Passing remote object references
remote procedure calls (RPC) in C, Remote Method Invocation (RMI)
RemoteException, Exceptions and Error Classes, Remote interfaces
RemoteObject interface, The UnicastRemoteObject class
remove(), Collection Flavors
Container class, Containers
removeActionListener(), Event Sources
renameTo() (File), File operations
rendering, Filling Shapes, The Whole Iguana
clipping shapes, Go Crazy
compositing, Go Crazy
convenience methods, drawing and filling shapes, Convenience Methods
drawaing shape outlines, Drawing Shape Outlines
drawing animations, Drawing Animations, Drawing Animations
drawing images, Drawing Images
drawing text, Drawing Text
filling shapes, Filling Shapes
Iguana example, The Whole Iguana, The Whole Iguana
steps in, The Rendering Pipeline
transformation, Go Crazy
rendering hints, The Rendering Pipeline, Using the RescaleOp Class
RenderingHints class, Go Crazy
reordering columns (JTable), A First Stab: Freeloading
repaint(), Events, Painting
Applet class, Image Observers
Component class, The Big Picture
JComponent class, The repaint( ) Method
limiting redrawing with, Limited Redrawing
reportChange(), Bound Properties
request and response objects, The Servlet Life Cycle, HTTP (Web) Servlets
requestFocus() (JComponent), Focus, Please
requests, determining type, A Simple Object-Based Server
rescaling images, Using the RescaleOp Class
RescaleOp class, Using the RescaleOp Class
reset() (BufferedInputStream), Buffered streams
resizing JFrames, Other Methods for Controlling Frames
ResourceBundle class, Resource Bundles, Resource Bundles
ListResourceBundle class, Resource Bundles
PropertyResourceBundle class, Resource Bundles
resources
applets, getting, Getting Applet Resources, Applets versus standalone applications
classes, loading, Loading Application Resources, Loading Application Resources
restricting file access, Room for improvement
resume()
Thread class, Deprecated methods
ThreadGroup class, Working with the ThreadGroup Class
return statements, The finally Clause
revalidate(), The revalidate( ) and doLayout( ) Methods, Layout Managers
rewriting (URL), User Session Management
RGB (see red, green, and blue)
RMI, Network Programming with Sockets and RMI, An RMI Example, Passing remote object references
CORBA, support for, RMI and CORBA
dynamic class loading, Dynamic class loading
object activation, RMI Object Activation
object serialization, use of, Remote Method Invocation (RMI)
registry, The RMI registry
remote interfaces, Remote interfaces
remote object references, passing, Passing remote object references, Passing remote object references
stubs and skeletons, Stubs and skeletons
UnicastRemoteObject class, The UnicastRemoteObject class
rmic (RMI compiler), Stubs and skeletons
creating stub and skeleton files, An RMI Example
rmiregistry application, The RMI registry
dynamic class loading and, Dynamic class loading
RMISecurityManager class, Dynamic class loading
root nodes, Nodes and Models
creation (example), A Complete Example
roots, Glossary
of filesystems, Path localization
rot13 (rotate by 13 letters) operation, The rot13InputStream Class
rot13CryptInputStream class, The URLConnection
rot13InputStream class, The crypt Handler
rotate() (Graphics2D), The Rendering Pipeline
rotational transformation (images), Using the AffineTransformOp Class
round() (Math), The java.lang.Math Class
rows
count, getting, Round Two: Creating a Table Model
GridBagLayout, GridBagLayout, Spanning Rows and Columns
spanning, Spanning Rows and Columns
weights, calculating, Calculating the weights of rows and columns
justification in FlowLayout, FlowLayout
selection of, A First Stab: Freeloading
RTF documents, displaying in JEditorPane, HTML and RTF for Free
run(), Running Code in the Thread, The Thread Class and the Runnable Interface
Thread class, The Thread Class, Using a MediaTracker, Drawing Animations
Runnable interface, The Runnable Interface, Controlling Threads, Timers
Thread class and, The Thread Class and the Runnable Interface, Using an adapter
runtime
adaptive compiler, use of, A Virtual Machine
typing (Java), Type Safety and Method Binding
RuntimeException class, Exceptions and Error Classes, Safety Implications
unchecked exceptions and, Checked and Unchecked Exceptions

S

sameFile() (URL), The URL Class
SampleModel class, BufferedImage Anatomy, Updating a BufferedImage
save(), Loading and Storing
say(), Serializing Access to Methods
scalability, Scalability
scale() (Graphics2D), The Rendering Pipeline
scaling (images), Scaling and Size, Using the AffineTransformOp Class
schedule() (Timer), Timers
scheduling threads, Scheduling and Priority
scope
declaring for classes, Inner Classes
this reference (inner classes), Scoping of the “this” reference
screen savers (animation example), Drawing Animations
scripting (BeanShell), BeanShell: Simple Java Scripting, Learning More . . .
scripting languages, Java Compared with Other Languages
data types, Types
JavaScript, Java Compared with Other Languages
reflection API, using to integrate Java with, What Is Reflection Good for?
servlets, advantages over, Why Servlets?
scrollbars, Scrollbars and Sliders, Scrollbars and Sliders
JScrollBar class, Scrollbars and Sliders
JScrollPane class, Lists and Combo Boxes, The JScrollPane Class, The JSplitPane Class
scrollbar display policy, The JScrollPane Class
ScrollPaneFrame class with ImageComponent, The JScrollPane Class
SDK (software development kit)
jar utility, The jar Utility
javac compiler, The Java Compiler
manifests (JAR files), version 1.1, JAR manifests
SDL policytool utility, The TestWrite example
searching, substrings within strings, Searching
security
applets, restrictions on reading/writing to files, Applets and Files
application- and user-level, Application and User-Level Security, Signing Classes
certificates, Certificates
digital signatures, Using Digital Signatures, Where We’ve Been, Where We’ve Been
certificates, Certificates, User (signer) certificates
HTTP daemon, Taming the daemon, Room for improvement
inner classes and, Security implications
Java programming language
design features, Safety of Design, Scalability
implementation features, Safety of Implementation, Security Managers
java.security file, The TestWrite example
policy files, Policy Files, Using a Policy File with the Default Security Manager
refection API, Security
reflection and beans, Safety Implications
RMISecurityManager, Dynamic class loading
security managers, Safety of Implementation, Security Managers, The JApplet Class
default, The Default Security Manager, Using a Policy File with the Default Security Manager, Sockets and security
SecurityManager class, The Security Manager, The Security Manager, The Applet Security Sandbox, Glossary
access to filesystems, controlling, Applets and Files
methods, The Security Manager
sockets and, Sockets and security
web communications, SSL and Secure Web Communications
SecurityException, The Security Manager
seek() (RandomAccessFile), The java.io.RandomAccessFile Class
selections
JTable, configuring for, A First Stab: Freeloading
selection models
combo box and lists, Lists and Combo Boxes
lists, Lists and Combo Boxes
nodes, Save a Tree
self-signed certificates, Certificate authority (CA) certificates
serialization, New Software Development Models, Serialization, Clients, Simple Serialized Object Protocols, Limitations, Glossary
applets, Attributes
Beans, Working with Serialized Beans, Working with Serialized Beans
object-based server, A Simple Object-Based Server, Limitations
of beans, Working with Serialized Beans
of methods, Serializing Access to Methods
RMI example, An RMI Example
RMI, use of, Remote Method Invocation (RMI)
Serializable interface, Serialization
servers, Servers, Glossary
(see also clients)
class files, making available via web server, Dynamic class loading
clients vs., Clients and Servers
EJB as server-side components, Enterprise JavaBeans
example (Pulse), The HeartBeat Applet, The Pulse server code
object-based (example), A Simple Object-Based Server, Limitations, Limitations
proxy servers, Proxies and Firewalls
RMI server, constructing, An RMI Example, An RMI Example
rot13 server, Trying it out
security restrictions on, Sockets and security
ServerSocket class, Clients and Servers, Servers
web server example (TinyHttpd), The TinyHttpd Server, Room for improvement
service(), HTTP (Web) Servlets
Servlet class, The Servlet Life Cycle
services
BeanContextServices, BeanContext and BeanContextServices, BeanContext and BeanContextServices
serviceAvailable() and serviceRevoked(), BeanContext and BeanContextServices
Servlet API, HTTP (Web) Servlets
ServletRequest class, HTTP (Web) Servlets
ServletResponse class, HTTP (Web) Servlets
servlets
advantages of using, Why Servlets?
HelloClient (example), The HelloClient Servlet
implementing, Implementing Servlets, Cookies
Java Servlet Development Kit (JSDK), downloading, Implementing Servlets
life-cycle of, The Servlet Life Cycle
location of, requesting, The ShowParameters Servlet
parameters, Servlet Parameters
ShoppingCart servlet (example), The ShoppingCart servlet, The ShoppingCart servlet
ShowParameters (example), The ShowParameters Servlet
ShowSession servlet (example), The ShowSession servlet
talking to, Talking to CGI Programs and Servlets, SSL and Secure Web Communications
user session management, User Session Management
Session Beans, Enterprise JavaBeans
session tracking (servlets), User Session Management
Set interface, Collection Flavors
set()
Calendar class, Dates
CryptInputStream class, The Encryption class
Field class, Accessing Fields
setActionCommand(), Buttons and Labels
setBorder() (JComponent), Borders
setBound(), Getting Properties information
setBounds(), Layout Managers
setChanged(), Observers and Observables
setColor(), Buttons and Labels
setComposite() (Graphics2D), The Rendering Pipeline
setConstraints(), The GridBagConstraints Class
setContentPane(), Using Content Panes
setContentType(), Content Types
setCursor(), Other Methods for Controlling Frames
setDaemon(), A Thread’s Life
setDefaultCloseOperation(), Windows and Frames
setDisplayName(), Getting Events information
setDoInput(), Using the POST Method
setDomain() (Cookie), Cookies
setDoOutput(), Using the POST Method
setEchoChar() (JPasswordField), Say the Magic Word
setEnabled(), Enabling and Disabling Components
setFocusTraversable() (JComponent), Focus, Please
setFont(), Buttons and Labels, The Rendering Pipeline, Using Fonts
Component class, The TextEntryBox Application
setIconImage(), Other Methods for Controlling Frames
setInt() (Field), Accessing Fields
setJMenuBar(), Menus
setjmp() statements in C, Exceptions
setKeepAlive(), TCP_KEEPALIVE
setLabelTable() (JSlider), Scrollbars and Sliders
setLastModified(), File operations
setLayout(), Layout Managers, Layout Managers
setLocation(), Layout Managers
Component class, Other Methods for Controlling Frames
setMaximumPriority(), Working with the ThreadGroup Class
setNextFocusableComponent() (JComponent), Focus, Please
setPaint() (Graphics2D), The Rendering Pipeline
setPath() (Cookie), Cookies
setPreferredSize() (JPanel), The revalidate( ) and doLayout( ) Methods
setProperty() (System), System Properties, Proxies and Firewalls
setReadOnly() (File), File operations
setRequestMethod(), Using the POST Method
setRequestProperty(), Using the POST Method
setResizable(), Other Methods for Controlling Frames
setRGB(), Creating an Image
setSecurityManager() (System), The Security Manager
setSize(), Using Content Panes
setSoLinger() (Socket), SO_LINGER
setSoTimeout() (Socket), SO_TIMEOUT
setStroke(), The Rendering Pipeline
setTcpNoDelay() (Socket), TCP_NODELAY
setText(), A Bean for displaying text
JLabel class, Buttons and Labels
TextArea, TextField classes, The TextEntryBox Application
setTitle(), Windows and Frames
setURL(), The URLStreamHandler
setValue() (Dial class example), A Dial Component
setVisible(), Windows and Frames
SHA and MD5 message digests, JAR manifests
shadowing variables, Shadowing, Shadowed Variables, Glossary
shallow copies, Cloning Objects
shapes
clipping shapes, Go Crazy
Iguana example, The Whole Iguana
creating from coordinate arrays (animation), Drawing Animations
filling, Filling Shapes, Filling Shapes, Desktop Colors
color gradients in, Color Gradients
desktop colors, Desktop Colors
solid colors, using, Solid Colors
texture, Textures
graphics context for drawing, The Big Picture
rendering in Graphics2D, The Rendering Pipeline
Shape interface and classes for, Filling Shapes
strokes of outlines, Drawing Shape Outlines, Stroking Shape Outlines
transforming, rendering pipeline, The Rendering Pipeline
shear() (Graphics2D), The Rendering Pipeline
Shift key modifier, Mouse and Key Modifiers on InputEvents
ShoppingCart servlet (example), The ShoppingCart servlet, The ShoppingCart servlet
short data type, Glossary
show(), The PopupMenu Class, CardLayout
showConfirmDialog() (JOptionPane), Dialogs
showDialog() (JColorChooser), The Color Chooser
showDocument(url) (AppletContext), Driving the browser
showMessageDialog() (JOptionPane), Dialogs
showOpenDialog() (JFileChooser), File Selection Dialog
showStatus() (Applet), Driving the browser
shutdownInput(), “Half Close”
shutdownOutput(), “Half Close”
signature, method, The Java Interpreter
signatures (see digital signatures)
signed JAR files, Where We’ve Been
jarsigner utility, Signing JARs
signers, Keystores, Keys, and Certificates
signing classes, Signing Classes, Tools of the Trade
(see also digital signatures)
SimpleAttributeSet class, Managing Text Yourself
single inheritance, Subclassing and Inheritance
interfaces providing exception to, Interfaces
single-line text editor, Text Components
SingleThreadModel interface, The Servlet Life Cycle
site certificates, Site certificates
size, Using Content Panes
(see also resizing)
columns (JTable), A First Stab: Freeloading
components in BorderLayout, BorderLayout
containers, preferred, Layout Managers
GUI components, Layout Managers
images, The JScrollPane Class, Scaling and Size
JFrames, resetting, Other Methods for Controlling Frames
sizeof operator, Operators
skeletons, Stubs and skeletons
rmic, creating, An RMI Example
skip() (InputStream), Terminal I/O
slash-separated pathnames, Loading Application Resources, The RMI registry
sleep() (Thread), Running Code in the Thread, Controlling Threads, The sleep( ) method
sliders, Scrollbars and Sliders, Scrollbars and Sliders
JSlider class, Scrollbars and Sliders
Smalltalk programming language
dynamic data typing and late method binding, Type Safety and Method Binding
dynamic typing in, Types
Java, comparison to, Java Compared with Other Languages
sockets, Network Programming with Sockets and RMI, Sockets, Proxies and Firewalls, Room for improvement, Glossary
clients and servers, Clients and Servers, Sockets and security
security, Sockets and security
ServerSocket class, Servers
Socket class, Clients and Servers
connectionless/connection-oriented protocols, Sockets
datagram, Datagram Sockets, The Pulse server code
DatagramSocket class, Datagram Sockets
proxies and firewalls, Proxies and Firewalls
HTTP connection, opening for, The URLConnection
Java programs sending data to server over, Applets and Files
multicast and datagram, Sockets
options, Socket Options, “Half Close”
Socket class, Clients
TCP, use of, Sockets
SSL (Secure Socket Layer), SSL and Secure Web Communications
SOCKS service, Proxies and Firewalls
SoftBevelBorder class, Borders
Software Development Kit (SDK)
appletviewer, Sockets and security
Java 2 Version 1.3, New Developments
look-and-feels (L&Fs), Pluggable Look-and-Feel
signing object with (TestWrite example), The TestWrite example, The TestWrite example
software, new development models, New Software Development Models
Solaris operating systems, look-and-feel of, Peers
solid colors, filling shapes with, Solid Colors
SortedMap interface, The Map Interface
SortedSet interface, Collection Flavors
sorting, methods in Collections class, Sorting for Free
sound (see audio)
source code
.java extension for files, The Java Compiler
copying for examples, A First Application
source image
processing with BufferedImageOp, How ImageProcessor Works
transforming to destination image, Filtering Image Data
source over destination compositing rule, The Whole Iguana
special references, Special References: this and super
speed
byte-code verification and, The Verifier
in programming languages, Yet Another Language?
spin() (Dial), A Dial Component
split panes, JSplitPane class, The JSplitPane Class
splitter bars, The JSplitPane Class
spreadsheets
creating, Round Three: A Simple Spreadsheet, Round Three: A Simple Spreadsheet
MVC framework, applying to, The Model/View/Controller Framework
SSL (Secure Socket Layer), SSL and Secure Web Communications
stacks
components, Z-Ordering (Stacking Components)
stack traces, Bubbling Up
type state of, The Verifier
standalone applications
applets vs., Applets versus standalone applications
sharing classes with applets, Loading Application Resources
standardization (Java Beans), What’s a Bean?
start()
Applet class, Applet Control
Thread class, Starting the Thread, Creating and starting threads, Controlling Threads
startsWith() (String), Searching
state
Beans, Running the BeanBox application, Properties and Customizers
(see also properties)
saving for, New Software Development Models
data types, The Verifier
statements, Statements and Expressions, Statements, Unreachable statements
code blocks and, Statements
conditional statements, Statements
import statement, The import Statement
iterative statements, Statements
Java, typing in BeanShell, Java Statements and Expressions
package statement, Compilation Units
static modifier, Static Members, Glossary
class members, Static Members
code blocks, Static and Nonstatic Code Blocks
final color values, Solid Colors
inner classes, Static inner classes
methods, Classes, Static Methods, Static method binding
main(), The Java Interpreter
sleep(), Running Code in the Thread
variables, retrieving value of with dot (.) operator, Variable access
with final modifier, Static Members
interface variables, Interface Variables
statically typed programming languages, Type Safety and Method Binding, Types
stop()
Applet class, Applet Control
AudioClip class, Working with Audio
suspend() versus, Threads in Applets
Thread class, Creating and starting threads, Deprecated methods
streams, Streams, The rot13InputStream Class, Glossary
byte and character, converting to/from, Character Streams
class resources, obtaining as, Loading Application Resources
file, File Streams, File Streams
guessing content type from name of, The URLConnection
objects, order of creation, A Simple Object-Based Server
strings, wrapping with, Strings to Streams and Back
URLs and, Stream Data
wrappers for, Stream Wrappers, Pipes
strictfp class modifier, Floating-point precision
strings, Constructors, Strings, The java.util.StringTokenizer Class, Glossary
arrays of, main() argument, The Java Interpreter
backslashes in, Path localization
Collator class, The Collator class
comparing, Comparisons
comparing in different languages, The Collator class
concatenation (+) operator, Operators
constructors, String Constructors
conversion to and from, Strings from Things
date/time, Dates
editing, Editing
equivalence, Hashcodes and key values
error messages, specifying with, Throwing Exceptions
hashtable for (Properties), Properties
java.text package, The java.text Class
newline, adding to, Print streams
pattern strings, The java.text Class
reference types and, A Word About Strings
searching for substrings in, Searching
String class, Strings
methods summary, String Method Summary
StringBuffer class, The java.lang.StringBuffer Class, Strings to Streams and Back
StringIndexOutOf Bounds Exceptions, Dates
StringIterator class, Passing remote object references
StringReader class, Strings to Streams and Back
StringTokenizer class, The java.util.StringTokenizer Class, Round Three: A Simple Spreadsheet
StringWriter class, Strings to Streams and Back
toString(), The Object Class
Unicode, support for, Text Encoding
URL specification, parsing, The URLStreamHandler
URL-encoded, GET, POST, and the “extra path”
stroke
drawing shape outlines, Drawing Shape Outlines
setting (Graphics2D), The Rendering Pipeline
shape outlines, Stroking Shape Outlines
strtok() in C, The java.util.StringTokenizer Class
struct (keyword) in C, Glossary
structures in C, Reference Types
strut component, BoxLayout
stubs, Stubs and skeletons
classes, loading dynamically, Dynamic class loading
rmic, creating, An RMI Example
style identifiers for fonts (PLAIN, BOLD, ITALIC), Using Fonts
sub-type polymorphism, Overriding Methods
subclassing, Interfaces, Glossary
inheritance and, Inheritance, Subclassing and Inheritance, Abstract Methods and Classes
abstract classes and methods, Abstract Methods and Classes
casting, Casting
overriding methods, Overriding Methods, Exceptions and overridden methods
shadowing variables, Shadowed Variables
special references, Special References: this and super
superclass constructors, using, Using Superclass Constructors
native peer components, difficulty of, Why the Move from AWT to Swing?
reference types and, Reference Types
SecurityManager class, The Security Manager
subclasses, Subclassing and Inheritance
subtypes and, Subclassing and Subtypes
Thread class, A natural-born thread, A natural-born thread
visibility modifiers and, Subclasses and Visibility
subinterfaces, Subinterfaces
subMap() (SortedMap), The Map Interface
submenus, creating, Menus
subSet(), Collection Flavors
substring(), Editing
sum(), Round Three: A Simple Spreadsheet
Sun Microsystems
HotJava web browser, A Virtual Machine, Application and User-Level Security
HotSpot virtual machine, A Virtual Machine
Java web site, Getting Wired
javac compiler, The Java Compiler
Network Filesystem (NFS), Datagram Sockets
super reference, Shadowed Variables, Special References: this and super, Glossary
super(), Using Superclass Constructors, Full Disclosure: Constructors and Initialization
super.parseURL(), The URLStreamHandler
superclasses, Finalization
(see also classes)
constructors, using, Using Superclass Constructors
finalize() methods of, Finalization
passing methods and variables to subclasses, Inheritance
suspend()
Thread class, Deprecated methods
ThreadGroup class, Working with the ThreadGroup Class
Swing, The JComponent Class, Swing, Multithreading in Swing
AWT (Abstract Window Toolkit) vs., Swing
components, Using Swing Components
borders, Borders, Borders
buttons and labels, Buttons and Labels, Buttons and Labels
checkboxes and radion buttons, Checkboxes and Radio Buttons, Checkboxes and Radio Buttons
custom, creating, Creating Custom Components, Model and View Separation
desktops, Desktops, Desktops
dialogs, Dialogs, The Color Chooser
JComponent class, Components
JPanel, use in double buffering, Double Buffering
JPopupMenu, The PopupMenu Class, The PopupMenu Class
JScrollPane class, The JScrollPane Class, The JSplitPane Class
JSplitPane class, The JSplitPane Class
JTabbedPane class, The JTabbedPane Class, The JTabbedPane Class
JTree class, Trees, A Complete Example
lists and combo boxes, Lists and Combo Boxes, Lists and Combo Boxes
look-and-feel, pluggable, Pluggable Look-and-Feel, Pluggable Look-and-Feel
menus, Menus, Menus
peerless and lightweight nature of, Peers
scrollbars and sliders, Scrollbars and Sliders, Scrollbars and Sliders
tables, Tables, Round Three: A Simple Spreadsheet
text components, Text Components, Managing Text Yourself
event architecture, Components
event types, Event Types
events, summary, Event Summary, Event Summary
moving from AWT to, reasons for, Why the Move from AWT to Swing?
multithreading in, Multithreading in Swing
names, prefixing with J, HelloJava3: The Button Strikes!
user interface component classes, Swing
SwingUtilities class, Multithreading in Swing
switch statements, Statements
synchronization, Using Color Methods, A Word About Synchronization, Introducing Threads, Passing Messages
Java tools for, Threads
threads, Multithreading
join(), The join( ) method
synchronized methods, collections, Implementations
synchronized modifer, Using Color Methods, A Word About Synchronization, Serializing Access to Methods, Glossary
constructors and, Constructors
synchronized statement, Statements
syntax (Java), simplicity of, Syntactic Sweet ‘n’ Low
System class, HelloJava1
input/output and errors, Terminal I/O
properties, providing access to, System Properties
System control panel in Windows, The JTabbedPane Class
System.err, Print streams
System.out, Method Overloading, Loading and Storing, Print streams
System.out.println(), The java.lang.StringBuffer Class
SystemColor class, Desktop Colors
modifying constants in, Desktop Colors

T

tables, Tables, Round Three: A Simple Spreadsheet
data models, Round Two: Creating a Table Model, Round Three: A Simple Spreadsheet
AbstractTableModel class, Round Two: Creating a Table Model
TableModel interface, Round Two: Creating a Table Model
JTable class, complete example, Round Two: Creating a Table Model
spreadsheet, creating, Round Three: A Simple Spreadsheet, Round Three: A Simple Spreadsheet
TableModel interface, Tables
tabs, JTabbedPane class, The JTabbedPane Class, The JTabbedPane Class
tags, The <APPLET> Tag
(see also HTML tags)
doc comment, Javadoc Comments
tailMap() (SortedMap), The Map Interface
tailSet(), Collection Flavors
tar (tape archive) files, content handler, The application/x-tar Handler, Using our new handler
tasks, creating and executing, Timers
Tcl scripting language, data types, Types
Tcl/Tk scripting language, Java Compared with Other Languages
TCP (Transmission Control Protocol), Glossary
closing one side of connection, “Half Close”
Keepalive option, TCP_KEEPALIVE
NoDelay option, TCP_NODELAY
Socket class, use of, Sockets
templates, HTML conversions, Messy Tags
term(), Round Three: A Simple Spreadsheet
terminal input/output, Terminal I/O
terminating threads, A Thread’s Life
ternary operator, Running Code in the Thread
text
Bean for displaying, A (Slightly) More Realistic Example
combo boxes, displaying in, Lists and Combo Boxes
drawing, Drawing Text
encoding, Text Encoding
formatting human-readable messages, The java.text Class
formatting numbers as, The java.text Class
graphics context for, The Big Picture
labels, creating and changing, Buttons and Labels
numerical ranges, mapping to, The java.text Class
rendering in Graphics2D, The Rendering Pipeline
strings and, String Constructors, The java.util.StringTokenizer Class
text components, Focus, Please, Text Components, Managing Text Yourself
Document, sharing among, Sharing a Data Model
JEditorPane and JTextPane classes, HTML and RTF for Free
JTextArea and JTextField, Text Components
JTextPane class, Managing Text Yourself, Managing Text Yourself
passwords (JPasswordField class), Say the Magic Word
TextEntryBox class, The TextEntryBox Application, The TextEntryBox Application
TextLayout class, Managing Text Yourself
TextLabels Bean, Putting them together
textures, TexturePaint class, Textures
this reference, Constructors, The “this” reference, Special References: this and super, Image Observers, Glossary
inner classes and, Scoping of the “this” reference
this(), Working with Overloaded Constructors, Working with Overloaded Constructors, Full Disclosure: Constructors and Initialization
thread safety
collections, Slam Dunking with Collections
iterators, Thread Safety and Iterators
threads, Threads, Threads, Working with the ThreadGroup Class, Glossary
controlling, Controlling Threads, A Thread’s Life
creating and starting, Creating and starting threads
daemon threads, The Java Interpreter
multithreading, Multithreading
priority, Scheduling and Priority
producer and consumer, Passing Messages
running code in, Running Code in the Thread
servlets, single and multiple, The Servlet Life Cycle
starting, Starting the Thread
synchronization, Multithreading, Using Color Methods, A Word About Synchronization, Synchronization, Passing Messages
wait() and notify(), The wait() and notify( ) Methods
synchronized statement, Statements
terminating, A Thread’s Life
Thread class, The Thread Class, Controlling Threads
Runnable interface and, The Thread Class and the Runnable Interface, Using an adapter
subclassing, A natural-born thread, A natural-born thread
ThreadGroup class, Thread Groups
throwing exceptions, Exceptions, Throwing Exceptions
throw statements, Glossary
throws clauses, Checked and Unchecked Exceptions, Glossary
tick marks (sliders), major and minor, Scrollbars and Sliders
time slicing, threads, Time-Slicing
timers, Timers
as invisible beans, Events Hookups and Adapters
sockets, I/O methods, SO_TIMEOUT
Timer class, Timers
TimerTask class, Timers
times, Dates, Dates
time zones, Dates
timeStep(), Drawing Animations
TinyHttpd server, The TinyHttpd Server, Room for improvement
converting to rot13 server, Trying it out
TitledBorder class, Borders
titles, setting for JFrame, Windows and Frames
toCharArray() (String), Things from Strings
toFront() and toBack(), Other Methods for Controlling Frames
toggle switches, checkboxes, Checkboxes and Radio Buttons
token(), Round Three: A Simple Spreadsheet
tokens, parsing string into, The java.util.StringTokenizer Class
toolbars, JToolBar class, HTML and RTF for Free
Toolkit class, The Image Class
toolkit property (Java API), Glossary
TooManyListenersException, Event Sources
top-level classes, Inner Classes
toString(), The Object Class, Strings from Things, Strings to Streams and Back
StringBuffer class, The java.lang.StringBuffer Class
UnicastRemoteObject class, The UnicastRemoteObject class
toURL(), Working with Audio
File class, File operations
tracing exceptions, Bubbling Up
Transferable interface, The Java Activation Framework
transferFocus() (JComponent), Focus, Please
transformations
AffineTransformOp class, using, Using the AffineTransformOp Class
image data, Filtering Image Data
in rendering, Go Crazy
transient modifier, Serialization
translate() (Graphics2D), The Rendering Pipeline
transparency
drawing with, The Whole Iguana
of pixels, Implementing an ImageObserver
trees, Trees, A Complete Example
complete example, A Complete Example, A Complete Example
DefaultTreeModel interface, Nodes and Models
events, Tree Events
selections, listeners for, A Complete Example
nodes, Nodes and Models
TreeModel interface, Nodes and Models
TreeNode interface, Nodes and Models
triangular arrays, Multidimensional Arrays
trim() (String), Editing
Trojan horses, protecting classes from, Safety of Implementation
truncating data to fit cells, A First Stab: Freeloading
trust
certificate authorities (CAs), Certificates
certificates, questioning by keytool, The TestWrite example
trusted applets, Trusted applets
try statements, Statements, Exception Handling, Exception Handling, Glossary
creeping, Try Creep
try/catch statements, Exceptions
two phase commit style, Constrained Properties
type (see data types)
type management (Beans), Bean Instantiation and Type Management
type state (stack), The Verifier
typing passwords (JPasswordField), Say the Magic Word

U

UCS (universal character set), Glossary
UDP (User Datagram Protocol), Datagram Sockets, Glossary
datagram sockets, Datagram Sockets, The Pulse server code
DatagramSocket class, Sockets
UI-delegate (components), The Model/View/Controller Framework
UIManager class, Pluggable Look-and-Feel
unchecked exceptions, Checked and Unchecked Exceptions
underscores (_) in class names, Locating Content Handlers
UnicastRemoteObject class, The UnicastRemoteObject class
Unicode characters, Text Encoding, Glossary
ASCII-compatible encoding of, Data streams
escape sequences, Text Encoding
character literals, Character literals
readers/writers, handling, Streams
UCS character encoding, Glossary
UTF-8 encoding, Glossary
Uniform Resource Names (URNs), Packages, Uniform Resource Locators (URLs)
Unix operating systems
CLASSPATH environment variable, The Class Path
PATH environment variable, The Class Path
UnknownHostException, Clients
UnknownServiceException, Stream Data
unnamed packages, The Unnamed Package
unpacking JAR files, The jar Utility
unreachable statements, Unreachable statements, Expressions
UnsupportedOperationException, The Collection Interface
untrusted applets, browser restrictions on, The Applet Security Sandbox
update(), Observers and Observables, The Big Picture
using effectively, Using Drawing Techniques
updateBeanList(), BeanContext and BeanContextServices
updateComponentTreeUI() (SwingUtilities), Pluggable Look-and-Feel
updateServicesList(), BeanContext and BeanContextServices
updating
image data
BufferedImage, using, Updating a BufferedImage, Updating a BufferedImage
coordinates arrays in animation, Drawing Animations
problems with, Using Drawing Techniques, Offscreen Drawing
Swing components, multithreading and, Multithreading in Swing
URLDecoder class, Using the POST Method
URLEncoder class, Using the GET Method, Using the POST Method
URLs (uniform resource locators), Uniform Resource Locators (URLs), Getting the Content as an Object
for audio files, Working with Audio
base URL for HTML documents, Loading Class Files
CGI programs and, Talking to CGI Programs and Servlets, SSL and Secure Web Communications
for class files, Dynamic class loading
constructing to files, Loading Application Resources
converting file paths to, File operations
cookie deployment, specifying for, Cookies
describing codebases, The policytool Utility
encoding data in, GET, POST, and the “extra path”
GET method, Using the GET Method
for movies[URLs (uniform resource locators)
movies, Working with Movies
formats for, Uniform Resource Locators (URLs)
for images, The Image Class
parsing, The java.util.StringTokenizer Class
protocol handlers, using, Writing a Protocol Handler
rewriting, User Session Management
URL class, The URL Class, Getting the Content as an Object
URLConnection class, The URLConnection, Writing a Protocol Handler, URLs, Stream Handlers, and Connections, The URLConnection, The URLConnection
URLStreamHandler class, Writing a Protocol Handler, The URLStreamHandler
URNs (Uniform Resource Names), Packages, Uniform Resource Locators (URLs)
user interfaces, New Software Development Models
(see also components, GUI; GUIs; Swing)
building with Swing, Swing, Multithreading in Swing
components, The JComponent Class, Swing, Components, Other Component Methods
containers, Containers, Using Content Panes
events, Events, Enabling new-style events explicitly
multithreading and, Multithreading in Swing
visual development environments for, New Software Development Models
user.dir property, File constructors
users
security, Application and User-Level Security, Signing Classes
session management by servlets, User Session Management
user certificates, User (signer) certificates
UTF-8 encoding, Data streams, Glossary
utility classes, Basic Utility Classes, The java.text Class
collections, Collections, WeakHashMap: An Interesting Variation
Iterator interface, Iterators
dates and times, Dates, Dates
internationalization, Internationalization, The java.text Class
java.text class, The java.text Class, The java.text Class
math utilities, Math Utilities, Random Numbers
ovservers and ovservables, Observers and Observables
properties, Properties, Observers and Observables
SecurityManager, The Security Manager, The Security Manager
strings, Strings, The java.util.StringTokenizer Class
SwingUtilities class, Multithreading in Swing
timers, Timers

V

validating data with beans (example), A Bean for validating numeric data
valueOf() (String), Strings from Things
VARARGS, anonymous arrays for, Anonymous Arrays
VariableGridLayout layout manager, Nonstandard Layout Managers
variables, Classes, Types, Classes
(see also instance variables; static modifier)
accessing with dot (.) operator, Variable access
accessing with reflection, Accessing Fields
class types and, Variables and Class Types
converting to/from strings, Comparisons
declaring, Variable declaration and initialization, Statements, Classes
inheritance of, Subclassing and Inheritance
instance, Accessing instance variables
instance or member variables, Instance Variables
interface, Interface Variables
modifiers, The paintComponent( ) Method
reference types, Reference Types
shadowing, Shadowed Variables
static, Static Members, Static Members
type checking, Type Safety and Method Binding
visibility of, Visibility of Variables and Methods, Interfaces and Visibility
vectors, Glossary
holding numbers in, Wrappers for Primitive Types
Vector class, Collections, Implementations
verbose mode, jar utility, The jar Utility
verifier (Java byte-code), Java Compared with Other Languages, Safety of Implementation, The Verifier, Glossary
Verisign, Certificate authority (CA) certificates
versions (Java), event handling differences in, Old-Style and New-Style Event Processing, Enabling new-style events explicitly
vertical box, creating, BoxLayout
vertical scrollbars, display policies, The JScrollPane Class
VerticalBagLayout layout manager, Nonstandard Layout Managers
vetoableChange(), Constrained Properties
video files
image observers and, Implementing an ImageObserver
Java Media Framework support for, New Kinds of Media
Players for, Working with Movies
viewers for applets, The JApplet Class, Driving the browser
appletviewer program (Sun), Viewing Applets
attributes, interpreting, Attributes
creating (example), Applets versus standalone applications
SecurityManager class, The Applet Security Sandbox
viewing Plug-in applets, Viewing Plug-in Applets
views (components), The Model/View/Controller Framework, Model and View Separation
(see also Model-View-Component framework)
separation from data models, Model and View Separation
virtual machines, A Virtual Machine, A Virtual Machine
garbage collection system, Garbage Collection
HotSpot, A Virtual Machine
virtual methods, Type Safety and Method Binding
overridden methods vs., Overriding Methods
viruses (see computer viruses)
visibility modifiers, Interfaces and Visibility
access to class members, controlling, Accessing Fields and Methods
classes, Class Visibility
constructors and, Constructors
inner classes
problems with, Security implications
static inner classes, Static inner classes
interfaces and, Interfaces and Visibility
private, Safety of Implementation, Using Color Methods
inheritance and, Subclassing and Inheritance
private and public, The paintComponent( ) Method
protected, Glossary
public, The Java Interpreter
classes in source code files, The Java Compiler
subclasses and, Subclasses and Visibility
variables and methods, Visibility of Variables and Methods, Interfaces and Visibility
visibility, applets, Applet Control
Visual BASIC, limitations of security features, Safety of Implementation
visual development tools, New Software Development Models
supporting Java Beans, New Software Development Models
vspace attribute, The Complete <APPLET> Tag

W

wait(), The wait() and notify( ) Methods
Thread class, Controlling Threads
waitforID() (MediaTracker), Using a MediaTracker
WeakHashMap class, WeakHashMap: An Interesting Variation
Web
Java and, Java and the World Wide Web, New Software Development Models
programming for, Programming for the Web, Cookies
web browsers
applets, running in context of, The JApplet Class
attributes, interpreting, Attributes
building, using JEditorPane HTML display, HTML and RTF for Free, HTML and RTF for Free
certificate authority certificates, Certificate authority (CA) certificates
content and protocol handler (downloadable), Web Browsers and Handlers
content and protocol handlers, Web Browsers and Handlers, Writing Content and Protocol Handlers
dynamically driving to new locations, Driving the browser
HotJava, Web Browsers and Handlers, Glossary
HotJavaBrowser Bean, What’s a Bean?
passing information to servlet or CGI program, GET, POST, and the “extra path”
responding to unknown tags, ¿Habla Applet?
SecurityManager class, The Applet Security Sandbox
web servers
Java applications for (servlets), Implementing Servlets
servlets handling HTTP requests for, HTTP (Web) Servlets
TinyHttpd server (example), The TinyHttpd Server, Room for improvement
WebNFS, Applets and Files
weighting (GridBagLayout), Grid Coordinates, Weighting, Calculating the weights of rows and columns
columns and rows, calculating, Calculating the weights of rows and columns
whitespace, trimming from strings, Editing
width
GridBagConstraints, Spanning Rows and Columns
images, retrieving for, Scaling and Size, Implementing an ImageObserver
text strings, obtaining, Font Metrics
width attribute (HTML), Attributes, The Complete <APPLET> Tag
windows, Windows and Frames
created by untrusted application, flagging, Application and User-Level Security
JFrame, The main( ) Method
JFrame vs. JWindow, Containers
JWindow class, Windows and Frames
content panes, using, Using Content Panes
setting position on screen, Other Methods for Controlling Frames
Window class, revalidating subclasses, Layout Managers
within windows, creating, Desktops
Windows operating systems
CLASSPATH environment variable, The Class Path
look-and-feel of components, Peers, Pluggable Look-and-Feel
System control panel, The JTabbedPane Class
Video (.avi) Player, Working with Movies
Wksh scripting language, Java Compared with Other Languages
word processors, building with JTextPane, Managing Text Yourself
words, parsing string into, The java.util.StringTokenizer Class
World Wide Web (see web)
wrapper classes, Primitive Types, Wrappers for Primitive Types
numbers, holding in Vector, Wrappers for Primitive Types
streams, Stream Wrappers, Pipes, The rot13InputStream Class
valueOf() methods, Things from Strings
writability, checking for, File operations
write()
BufferedOutputStream, Buffered streams
OutputStream, Clients
PipedOutputStream, Pipes
writeInt() (DataOutputStream), Data streams
writeObject(), A Simple Object-Based Server
ObjectOutputStream, Serialization
writers, Pipes
BufferedWriter class, Streams, Buffered streams
FileWriter class, Streams, File operations
FilterWriter class, Stream Wrappers
OutputStreamWriter class, Streams, Character Streams
PipedWriter class, Streams
PrintWriter class, Streams, Print streams, Pipes, Using the POST Method
wrapping FileOutputStream, File Streams
StringWriter class, Strings to Streams and Back
Writer class, Streams
writeUTF() (DataOutputStream), Data streams
WYSIWYG GUI builder environment, GridBagLayout

X

x and y local variables, maintaining for grid coordinates, Grid Coordinates
XML, downloadable handlers and, Other Handler Frameworks

Y

yield(), Yielding

Z

Z-ordering (stacking components), Z-Ordering (Stacking Components)
ZIP compression format, The Class Path, Data Compression
ZipInputStream class, Decompressing Data
ZipOutputStream class, Compressing Data

Get Learning Java now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.