Hallo Forum!
Ich habe ein Verständnisproblem bzgl. Swing, Methoden, Konstruktoren und deren Schreibweise.
Ich weiss was Konstruktoren u. Methoden sind.
Aber die Sschreibweise in Swing verwirrt mich einfach!
(Folgende Bsp habe ich übernommen!)
Z. B: folgendes Bsp:
Wieso ist es möglich im Konstruktor eine Methode (.add()) aufzurufen?
Warum kann ich hier in der main Klasse den grössten Teil weglassen?
Ich dachte mir lt. Bücher baut man eine Klasse so auf:
class (instanziieren mit xy z = new xy)
konstruktor od default konstruktor
methoden
Hier wird aber alles ineinander verschachtelt.
Genauso verwirrt mich diese Schreibweise:
Hier wird in einer Methode einer Klasse new aufgerufen.
Ich war es von Konsolenprogrammen gewöhnt, dass in der main Methode mit new alles instanziiert wird.
Diese ganze Schreibweise kommt mir komplett spanisch vor.
Kann man mir sie vll. jemand näher erläutern bzw. wo ich eine wirklich gute Doku finde, wo genau diese Fragen näher beleuchtet werden.
Danke Euch schon mal vielmals!
lG
Ich habe ein Verständnisproblem bzgl. Swing, Methoden, Konstruktoren und deren Schreibweise.
Ich weiss was Konstruktoren u. Methoden sind.
Aber die Sschreibweise in Swing verwirrt mich einfach!
(Folgende Bsp habe ich übernommen!)
Z. B: folgendes Bsp:
Code:
import javax.swing.*;
import java.awt.*;
public class HelloWorld extends JFrame {
static JLabel lbText = new JLabel("Hallo Welt",0);
HelloWorld() {
super("Titel");
getContentPane().add(lbText);
setSize(10,20);
pack();
setVisible(true);
}
public static void main ( String[] argv) {
new HelloWorld();
}
}
Wieso ist es möglich im Konstruktor eine Methode (.add()) aufzurufen?
Warum kann ich hier in der main Klasse den grössten Teil weglassen?
Ich dachte mir lt. Bücher baut man eine Klasse so auf:
class (instanziieren mit xy z = new xy)
konstruktor od default konstruktor
methoden
Hier wird aber alles ineinander verschachtelt.
Genauso verwirrt mich diese Schreibweise:
Code:
import javax.swing.*;
class HelloWorldSwing {
public static void main(String[] args) {
// Verpacke den auszuführenden Quellcode in ein eigenes
// Runnable-Objekt, um diesen nachher im Event Dispatching
// Thread ausführen zu können
Runnable guiCreator = new Runnable() {
public void run() {
// Erstellt das Swing-Fenster
JFrame fenster = new JFrame("Hallo Welt mit Swing");
// Swing anweisen, das Programm zu beenden, wenn das Fenster
// geschlossen wird
fenster.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// Fügt den "Hallo Welt"-Text hinzu
JLabel label = new JLabel("Hallo Welt");
fenster.getContentPane().add(label);
// Zeigt das Fenster an
fenster.setSize(300, 200);
fenster.setVisible(true);
}
};
// Führe den obigen Quellcode im Event-Dispatch-Thread aus
SwingUtilities.invokeLater(guiCreator);
}
}
Hier wird in einer Methode einer Klasse new aufgerufen.
Ich war es von Konsolenprogrammen gewöhnt, dass in der main Methode mit new alles instanziiert wird.
Diese ganze Schreibweise kommt mir komplett spanisch vor.
Kann man mir sie vll. jemand näher erläutern bzw. wo ich eine wirklich gute Doku finde, wo genau diese Fragen näher beleuchtet werden.
Danke Euch schon mal vielmals!
lG