|
|
1.7.1 Das erste Java Programm
class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!");
}
} |
- Übersetzen Sie die Datei HelloWorld.java mit Hilfe des Kommandos javac in eine Bytecode-Datei mit dem Namen HelloWorld.class.
- Führen Sie das Programm mit dem Kommando java aus.

1.7.2 Eine einfache grafische Oberfläche
|
(Lizenz) |
|
1.7.3 Swing Rechner
1. Quellcode erzeugen
Erzeugen Sie eine Datei mit dem Namen SwingRechner.java und dem folgendem Inhalt:
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JPanel;
public class SwingRechner extends javax.swing.JFrame {
private javax.swing.ButtonGroup buttonGroup1;
private javax.swing.JPanel jPanel1;
private javax.swing.JTextField jTextField1;
private javax.swing.JTextField jTextField2;
private javax.swing.JTextField jTextFieldOut;
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JButton jButton3;
private void initComponents() {
jTextField1 = new javax.swing.JTextField();
jTextField2 = new javax.swing.JTextField();
jTextFieldOut = new javax.swing.JTextField();
jButton1 = new javax.swing.JButton();
jButton2 = new javax.swing.JButton();
jButton3 = new javax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setTitle("Swing Rechner");
jTextField1.setText("0");
jTextField1.setColumns(6);
jTextField2.setText("0");
jTextField2.setColumns(6);
jTextFieldOut.setText("0");
jTextFieldOut.setEditable(false);
jButton1.setText("XXXX");
jButton2.setText("YYYY");
jButton3.setText("ZZZZ");
JPanel radioPanel = new JPanel(new GridLayout(1, 0));
radioPanel.add(jButton1);
radioPanel.add(jButton2);
radioPanel.add(jButton3);
jButton1.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e) {
if(e.getSource() == jButton1)
jTextFieldOut.setText(
executeOperation1(jTextField1.getText(),
jTextField2.getText()));
}
}
);
jButton2.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e) {
if(e.getSource() == jButton2)
jTextFieldOut.setText(
executeOperation2(jTextField1.getText(),
jTextField2.getText()));
}
}
);
jButton3.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e) {
if(e.getSource() == jButton3)
jTextFieldOut.setText(
executeOperation3(jTextField1.getText(),
jTextField2.getText()));
}
}
);
this.setBounds(300, 300, 200, 30);
setMinimumSize(new Dimension(200,30));
getContentPane().add(jTextField1, BorderLayout.WEST);
getContentPane().add(jTextField2, BorderLayout.EAST);
getContentPane().add(radioPanel, BorderLayout.NORTH);
getContentPane().add(jTextFieldOut, BorderLayout.SOUTH);
pack();
}
public SwingRechner() {
initComponents();
}
public static void main(String[] args) {
SwingRechner f1 = new SwingRechner();
f1.setVisible(true);
}
public String executeOperation1(String s1,String s2) {
int op1= Integer.parseInt(s1);
int op2= Integer.parseInt(s2);
// Add Application logic here:
int resultInt = 0;
return (Integer.toString(resultInt)) ;
}
public String executeOperation2(String s1,String s2) {
int op1= Integer.parseInt(s1);
int op2= Integer.parseInt(s2);
// Add Application logic here:
int resultInt = 1;
return (Integer.toString(resultInt)) ;
}
public String executeOperation3(String s1,String s2) {
int op1= Integer.parseInt(s1);
int op2= Integer.parseInt(s2);
int resultInt = 2;
return (Integer.toString(resultInt)) ;
}
}
2. Erzeugen Sie die Javabytecodedatei SwingRechner.class
javac SwingRechner.java
3. Führen sie das Programm aus
java SwingRechner
4. Programmanpassung
Passen Sie das Programm an um einen Rechner für drei Grundrechenarten zu erhalten. Ersetzen sie in SwingRechner.java die folgenden Texte
- XXXX durch ein Symbol einer Rechenart
- YYYY durch eine Symbol einer Rechenart
- ZZZZ durch ein Symbol einer Rechenart
Implementieren Sie die drei entsprechenden Grundrechenarten in den Methoden executeOperation1(), executeOperation2(), executeOperation3().
Ändern Sie hierfür die drei Zuweisungen sinngemäss und ersetzen sie die Zuweisungen von 0, 1, 2 durch den passenden mathematischen Term mit op1 und op2.
...
int resultInt = 0;
...
int resultInt = 1;
...
int resultInt = 2;
...
Das Programm soll anschliesend die Operationen passend zu den Buttonbeschriftungen ausführen
5. Speichern, Übersetzen und Ausführen des Programms
1.7.4 Übersetzen und Ausführen eines Programms mit Konsoleneingaben
Erzeugen Sie eine Datei mit dem entsprechenden Namen. Setzen Sie den unten aufgeführten Quellcode ein. Übersetzen Sie ihn. Führen Sie ihn aus.
import java.util.Scanner;
public class GGT {
public static void main(String[] args) {
Scanner eingabe = new Scanner(System.in);
System.out.print("Geben Sie die erste Zahl ein: ");
int zahl1 = eingabe.nextInt();
System.out.print("Geben Sie die zweite Zahl ein: ");
int zahl2 = eingabe.nextInt();
int ergebnis = ggT(zahl1, zahl2);
System.out.println("Ergebnis: " + ergebnis);
}
/**
* Euklidscher Algorithmus als Java-Methode
*/
public static int ggT(int x, int y) {
while (x != y) {
System.out.println("Zwischenbelegung, x= " + x + ", y=" + y);
if (x > y) {
x = x - y;
} else {
y = y - x;
}
}
return x;
}
}


