Rabinowitz and Wagon 477
race condition 460
race conditions 459
ragged arrays 197
Ralph Johnson 747
RandomAccessFile 508
RandomAccessFile class 510
Reader class 510
Readers 508
realization 280
expanded form 280
expressing in UML 280
lollipop diagram 280
simple form 280
record locking 534
reference data types 130
arrays 130
reference to object combinations 271
reference types 129
working with 134
reference variable
definition of 135
registry
starting externally 573
relational databases 626
creating tables 650
foreign key 650
primary key 650
relating tables 650
reliable object-oriented software
creating 723
Remote interface
extending
example code 597
use of 570
Remote Method Invocation 581
Remote Method Invocation (RMI) 569–576
renderer
custom
plugin 379
repaint() 595
repaint() method 385
repainting
GUI components 382
requirements 6, 60, 781
gaining insight through pictures 65
requirements gathering 6
reserved keywords 127
resources
loading
absolute vs. relative URLs 388
loading via relative URLs 388
loading via URL 387
return 128
Richard Helm 747
RMI 590, 596
client
running 574
client application 573
client code example 600
differences between Java 1.4.2 and Java 1.5 575
extended example 596–619
extending Remote interface 570
extending UnicastRemoteObject 571
Java Remote Method Protocol (JRMP) 570
Naming.lookup()
use of 573
overview 569
registry
starting externally 573
starting programmatically 572
server
running 574
server application 572
steps to creating application 570
RMI registry
default port 572
starting from program 598
RMI runtime 599, 607, 618
RMI server-side objects 607
rmic tool
example use 599, 667
use of 571
Robert’s Rules of Order 555
robot rat project specification 62
analyzing 63
RobotRat project specification 588
rule-of-thumb
one class-one file 17