Introduction To The Java Programming
Introduction To The Java Programming
Introduction to the
Java Programming Language
JAVA
Source BYTECODE Class
Files (.java) COMPILER Files (.class)
Running
Application JAVA VIRTUAL MACHINE
Running
Applet WEB BROWSER
int x,y,z;
x = 0;
x++;
y = x + 10;
y = y % 5;
z = 9 / 5;
i += 10; // i = 15
i %= 12; // i = 3
Java.lang.ArithmeticException: / by zero
at DivdeBy0.main(DivdeBy0:3)
} finally {
statement-list3
}
public class X {
public static void main(String args[])
{
try{
BufferedReader dis = new BufferedReader(
new InputStreamReader(System.in));
System.out.println("Enter x ");
String s = dis.readLine();
double x= Double.valueOf(s.trim()).doubleValue();
// trim removes leading/trailing whitespace and ASCII control chars.
System.out.println("x = " + x);
} catch (Exception e) {
System.out.println("ERROR : " + e) ;
e.printStackTrace(System.out);
}
}
Software Design (Java Tutorial) © SERG
I/O Example with Reading and
Writing from or to the File
import java.io.*;
import java.util.*;
// Program that reads from a file with space delimited name-pairs and
// writes to another file the same name-pairs delimited by a tab.
class P
{
public static void main(String [] args)
{
BufferedReader reader_d;
int linecount = 0;
Vector moduleNames = new Vector();
try {
while (true) {
String line = reader_d.readLine();
if (line == null) {
break;
}
linecount++;
} // end while
catch (Exception e) {
e.printStackTrace();
System.exit(1);
}
BufferedWriter writer_d;
try {
int add(){
return i + j;
}
}
…
Add a = new Add();
System.out.println(a.add(4,6));
Software Design (Java Tutorial) © SERG
Class Variables (Cont’d)
• Class variables are defined for each instance
of the class. Thus, each object gets its own
copy.
• Class variables may be initialized. They are
set to 0 or null otherwise. Local variables
(inside methods) must be initialized before
they can be used.
• May use the static keyword to make a data
element common among all class instances.
Software Design (Java Tutorial) © SERG
Class Variables (Cont’d)
class Incrementor Incrementor f1, f2;
{
f1 = new Incrementor();
private static int i = 0;
f2 = new Incrementor();
void incrCount(){ f1.incrCount();
i++; System.out.println(f1.getCount());
} f2.incrCount();
System.out.println(f1.getCount());
int getCount() {
return i;
}
What is the output?
}
What is the output if i is not defined as
static?
Array A
int[ ] float[ ] A[ ]
Pitcher(float era) {
super((float).300);
this.era = era;
}
} Software Design (Java Tutorial) © SERG
Packages
• A package is a loose collection of classes.
• Packages are like libraries.
• Packages may be created using the
package keyword.
• Packages are located by the CLASSPATH
environment variable.
• In order to use a package you use the
import keyword.
public claculator() {
prog = 0;
}
public Hello_main() {
}
public Hello_main() {
}
The log file was created at the same time as the screen printouts
{ jButtonRun.setText("Run");
void jButtonRun_actionPerformed(ActionEvent e)
{
change_status(Color.red, "Working Please wait...");
final claculator cc = new claculator();
final IterationListener listener = this;
//cc.addListener(new Printer());
Thread t = new Thread() {
public void run() {
cc.addListener(listener);
cc.work();
cc.removeListener(listener);
}
};
t.start();
}
GUI nextIteration
Implementation
• The new function will need to update the
GUI with the status of the worker:
– Change the status bar to a working mode.
– Update:
• Current value field.
• Status Bar.
• Complete percentage.
– When done open the ‘Done’ dialog box and
reset everything to the starting state.
if (e.isFinished()) {
change_status(Color.getColor("204,204,204"), "Ready");
//Start the finished dialogBox
Hello_FrameAbout dlg = new Hello_FrameAbout(this);
Dimension dlgSize = dlg.getPreferredSize();
Dimension frmSize = getSize();
Point loc = getLocation();
dlg.setLocation((frmSize.width - dlgSize.width) / 2 + loc.x, (frmSize.height - dlgSize.height) / 2 + loc.y);
dlg.setModal(true);
dlg.show();
jProgressBar.setValue(0);
jLabelProgress.setText("0%");
jLabelCurrentValue.setText("Not Running");
}
}
Summary
• I hope you gained some knowledge of how to
create and manage Swing applications and events.
• Source code the complete example as well as the
compiled version is available to download.
• Usage:
– Java –classpath Hello.jar Hello.Hello_main filename
– Java –classpath Hello.jar Hello.Hello_GUI