
384 CHAPTER 7 Object-Oriented Programming,Part 2: User-Defined Classes
You may wonder why the compiler calls an identifier a symbol. The Java
compiler generates a symbol table as it reads your code. Each identifier you
declare is put into the symbol table, along with the identifier’s data type
and where in the program it was defined. This symbol table allows the
compiler to track the identifiers that are in scope at any given time. Thus, if
an identifier is not in scope, the compiler will not be able to find that sym-
bol in its table for that section of code.
When the client in Example 7.2 runs, it instantiates three objects, but
there is nothing mor ...