<< Chapter < Page | Chapter >> Page > |
At runtime, the name of the class that implements the GraphIntfc01 interface must be provided as a command-line argument.
If the command-line argument is missing, the program instantiates an object from the internal test class named junk and plots the data produced by thatobject. Therefore, you can test the program by running it with no command-line arguments. This will produce the display shown in Figure 4 .
Figure 4. Graphic Display for Self-Test Class. |
---|
If the command-line argument is provided, the program instantiates an object of the class whose name matches the argument, and plots the data produced bythat object.
This program provides the following text fields for user input, along with a button labeled Graph . This allows the user to adjust the parameters and re-plot the graph as many times as needed with as many differentplotting scales as may be needed:
The user can modify any of these parameters and then press the Graph button to cause the five functions to be re-plotted according to the newparameters.
Whenever the Graph button is pressed, the event handler for that button instantiates a new object of the class that implements the GraphIntfc01 interface.
Depending on the nature of that class, this may be redundant in some cases. However, it is useful in those cases where it is necessary to refresh the valuesof instance variables defined in the class (such as a counter, for example) .
(I will show you how to eliminate this feature from the plotting program if you decide that it is unnecessary for your data.)
This program uses constants that were first defined in the Color class of v1.4.0. Therefore, the program requires v1.4.0 or later to compile andexecute correctly.
I will discuss this program in fragments. As mentioned earlier, a complete listing of the program is provided in Listing 39 near the end of the module. You should be able to copy and paste that code into your Java source file, and thencompile and execute it successfully.
The entire class, including the main method is shown in Listing 19 .
Listing 19. The class named Graph01. |
---|
import java.awt.*;
import java.awt.event.*;import java.awt.geom.*;
import javax.swing.*;import javax.swing.border.*;
class Graph01{public static void main(
String[]args)
throws NoSuchMethodException,ClassNotFoundException,
InstantiationException,IllegalAccessException{
if(args.length == 1){//pass command-line parameter
new GUI(args[0]);
}else{//no command-line parameter given
new GUI(null);}//end else
}// end main}//end class Graph01 definition |
The primary purpose of main method is to instantiate an object of the class named GUI .
In addition, the main method checks to see if the user provided a command-line argument, and if so, passes it along to the constructorfor the GUI class.
Notification Switch
Would you like to follow the 'Digital signal processing - dsp' conversation and receive update notifications?