| The "Hello World" Application

## Defining a Class

> The first bold line in the following listing begins a class definition block.

> >     /**
> >      * The HelloWorldApp class implements an application that
> >      * simply displays "Hello World!" to the standard output.
> >      */
> >     class HelloWorldApp {
> >         public static void main(String[] args) {
> >             System.out.println("Hello World!"); //Display the string.
> >         }
> >     }

> A class--the basic building block of an object-oriented language such as Java--is a template that describes the data and behavior associated with instances of that class. When you instantiate a class you create an object that looks and feels like other instances of the same class. The data associated with a class or object is stored in variables; the behavior associated with a class or object is implemented with methods. Methods are similar to the functions or procedures in procedural languages such as C.

> Julia Child's recipe for rack of lamb is a real-world example of a class. Her rendition of the rack of lamb is one instance of the recipe, and mine is quite another. (While both racks of lamb may "look and feel" the same, I imagine that they "smell and taste" different.)

> A more traditional example from the world of programming is a class that represents a rectangle. The class would contain variables for the origin of the rectangle, its width, and its height. The class might also contain a method that calculates the area of the rectangle. An instance of the rectangle class would contain the information for a specific rectangle, such as the dimensions of the floor of your office, or the dimensions of this page.

> In the Java language, the simplest form of a class definition is

> >     class name {
> >         . . .
> >     }

> The keyword `class` begins the class definition for a class named `name`. The variables and methods of the class are embraced by the curly brackets that begin and end the class definition block. The "Hello World" application has no variables and has a single method named `main`.

> For more information about object-oriented concepts, see Object-Oriented Programming Concepts: A Primer. To learn how object-oriented concepts are implemented in the Java language, see Objects, Classes, and Interfaces.

| The "Hello World" Application