The JavaTM Tutorial

| Start of Tutorial > Start of Trail > Start of Lesson | Search Feedback Form

Trail: Learning the Java Language
Lesson: Language Basics

## Variables

> An object stores its state in variables.

> > Definition: A variable is an item of data named by an identifier.

> You must explicitly provide a name and a type for each variable you want to use in your program. The variable's name must be a legal identifier --an unlimited series of Unicode characters that begins with a letter. You use the variable name to refer to the data that the variable contains. The variable's type determines what values it can hold and what operations can be performed on it. To give a variable a type and a name, you write a variable declaration, which generally looks like this:

> >     type name

> In addition to the name and type that you explicitly give a variable, a variable has scope. The section of code where the variable's simple name can be used is the variable's scope. The variable's scope is determined implicitly by the location of the variable declaration, that is, where the declaration appears in relation to other code elements.

> The `MaxVariablesDemo` program, shown below, declares eight variables of different types within its `main` method. The variable declarations are red:

> >     public class MaxVariablesDemo {
> >         public static void main(String args[]) {

> >             // integers
> >             byte largestByte = Byte.MAX_VALUE;
> >             short largestShort = Short.MAX_VALUE;
> >             int largestInteger = Integer.MAX_VALUE;
> >             long largestLong = Long.MAX_VALUE;

> >             // real numbers
> >             float largestFloat = Float.MAX_VALUE;
> >             double largestDouble = Double.MAX_VALUE;

> >             // other primitive types
> >             char aChar = 'S';
> >             boolean aBoolean = true;

> >             // display them all
> >             System.out.println("The largest byte value is " + largestByte);
> >             System.out.println("The largest short value is " + largestShort);
> >             System.out.println("The largest integer value is " + largestInteger);
> >             System.out.println("The largest long value is " + largestLong);

> >             System.out.println("The largest float value is " + largestFloat);
> >             System.out.println("The largest double value is " + largestDouble);

> >             if (Character.isUpperCase(aChar)) {
> >                 System.out.println("The character " + aChar + " is upper case.");
> >             } else {
> >                 System.out.println("The character " + aChar + " is lower case.");
> >             }
> >             System.out.println("The value of aBoolean is " + aBoolean);
> >         }
> >     }

> The output from this program is:

> >     The largest byte value is 127
> >     The largest short value is 32767
> >     The largest integer value is 2147483647
> >     The largest long value is 9223372036854775807
> >     The largest float value is 3.40282e+38
> >     The largest double value is 1.79769e+308
> >     The character S is upper case.
> >     The value of aBoolean is true

> The following sections elaborate on the various aspects of variables, including data types, names, scope, initialization, and final variables. The `MaxVariablesDemo` program uses two items with which you might not yet be familiar and are not covered in this section: several constants named `MAX_VALUE` and an `if-else` statement. Each `MAX_VALUE` constant is defined in one of the number classes provided by the Java platform and is the largest value that can be assigned to a variable of that numeric type.
> - Data Types
> - Variable Names
> - Scope
> - Variable Initialization
> - Final Variables
> - Summary of Variables
> - Questions and Exercises: Variables
> You will learn about the `if`-`else` statement used in the `MaxVariablesDemo` program in the Control Flow Statements section later in this lesson.

| Start of Tutorial > Start of Trail > Start of Lesson | Search Feedback Form

Copyright 1995-2004 Sun Microsystems, Inc. All rights reserved.