A Java environment augmented with real-time capabilities would provide an attractive object-oriented language environment for real-time developers and a predictable, responsive platform for Java developers. The Real-Time Specification for Java documents a limited set of modifications to the Java language specification and Java Virtual Machine specification, as well as a set of APIs, to provide a predictable platform for the execution of Java code. In this paper, we will examine the requirements and design decisions that led to the Real-Time Specification and provide several practical examples of its use.