Java Reference
In-Depth Information
Figure 7.6
The user interface
of a software
calculator
To investigate how the CalcEngine class is used by other classes, it is useful to look at its interface .
Confusingly, we are now not talking about the user interface , but about the class interface . This
double meaning of the term interface is unfortunate, but it is important to understand both meanings.
The class interface is the summary of the public-method headers that other classes can use. It is
what other classes can see and how they can interact with our class. The interface is shown in
the javadoc documentation of a class and in the Documentation view in the editor. Code 7.4
shows the interface of the CalcEngine class.
Code 7.4
The interface of the
arithmetic logic unit
// Return the value to be displayed.
public int getDisplayValue();
// Call when a digit button is pressed.
public void numberPressed( int number);
// Call when a plus operator is pressed.
public void plus();
// Call when a minus operator is pressed.
public void minus();
// Call to complete a calculation.
public void equals();
// Call to reset the calculator.
public void clear();
Such an interface can be written before the full classes are implemented. It represents a sim-
ple form of contract between the CalcEngine class and other parts of the program that wish
to use it. The CalcEngine class provides the implementation of this interface. The interface
describes a minimum set of methods that will be implemented in the logic component, and
for each method the return type and parameters are fully defined. Note that the interface gives
no details of exactly what its implementing class will do internally when notified that a plus
Search WWH ::




Custom Search