Hallo,
erstmal ein paar Zeilen zu meinem programmiertechnischen Hintergrund: Ich bin neu in der objektorientierten Programmierung, bin aber relativ gut bewandert in prozeduralen Programmierprachen insbesondere C. Da ich erst seit kurzem mit Java arbeite fällt es mir noch ein bisschen "schwer" die "Gedanken hinter der objektorientierung" zu verinnerlichen. Deshalb auch meine kleine Frage zu folgendem Codeschnipseln:
Angenommen ich habe zwei verschiedene Klassen.
Einmal:
und meine zweite Funktion:
Mein Fenster erzeuge ich in der Klasse fenster indem ich einfach ein Objekt von der Klasse JFrame erzeuge und entsprechend über dieses Objekt auf die Funktionen zugreife. Ich kann fenster aber jetzt auch so schreiben:
Beides funktioniert, jedoch würde ich gerne eine "Beurteilung" beider Methoden haben. Mit der ersten Version umgehe ich quasi die Möglichkeit der Vererbung, aber ich kann darin (noch) keinen Nachteil sehen (obwohl ich intuitiv der Meinung bin, Variante zwei müsste besser sein). Ich würde mich sehr freuen, wenn einer sich bereiterklären würde mir ein wenig weiter zu helfen und mir das ein wenig erläutern könnte!
Viele Grüße
EDIT: Klassennamen groß geschrieben
erstmal ein paar Zeilen zu meinem programmiertechnischen Hintergrund: Ich bin neu in der objektorientierten Programmierung, bin aber relativ gut bewandert in prozeduralen Programmierprachen insbesondere C. Da ich erst seit kurzem mit Java arbeite fällt es mir noch ein bisschen "schwer" die "Gedanken hinter der objektorientierung" zu verinnerlichen. Deshalb auch meine kleine Frage zu folgendem Codeschnipseln:
Angenommen ich habe zwei verschiedene Klassen.
Einmal:
Java:
public class Hauptfunktion {
public static void main(String[] args) {
fenster f = new Fenster();
}
}
und meine zweite Funktion:
Java:
import javax.swing.JFrame;
public class Fenster {
public Fenster() {
JFrame fenster = new JFrame("Titel");
fenster.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
fenster.setSize(256,256);
fenster.setVisible(true);
}
}
Mein Fenster erzeuge ich in der Klasse fenster indem ich einfach ein Objekt von der Klasse JFrame erzeuge und entsprechend über dieses Objekt auf die Funktionen zugreife. Ich kann fenster aber jetzt auch so schreiben:
Java:
import javax.swing.JFrame;
public class Fenster extends JFrame {
public Fenster() {
super("Titel");
setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
setSize(256,256);
setVisible(true);
}
}
Beides funktioniert, jedoch würde ich gerne eine "Beurteilung" beider Methoden haben. Mit der ersten Version umgehe ich quasi die Möglichkeit der Vererbung, aber ich kann darin (noch) keinen Nachteil sehen (obwohl ich intuitiv der Meinung bin, Variante zwei müsste besser sein). Ich würde mich sehr freuen, wenn einer sich bereiterklären würde mir ein wenig weiter zu helfen und mir das ein wenig erläutern könnte!
Viele Grüße
EDIT: Klassennamen groß geschrieben
Zuletzt bearbeitet: