Quellcode "splitten"

GhostfaceChilla

Bekanntes Mitglied
Hallo Leute,
da ich solangsam mit dem Programmieren immer besser vorankomm haben sich auch wieder eine Frage aufgetan:
Da das erstellen von einer grafischen Oberfläche eventuell mehrere Zeilen in anspruch nimmt, hab ich mir gedacht würde es sich anbieten den Quellcode nicht in die "Main Klasse" aufzunehmen sondern eine neue anzulegen.Nun weis ich noch das ich in C++ einfach eine neue Datei erstellen konnte und diese mit der "Main Klassei" verbinden konnte.Wie ist das in Java?Könnte ich es folgender Maßen umsetzen?:
Java:
import javax.swing.JFrame;

public class GUI{

	public static void drawWindow(){
		JFrame j= new JFrame("Ok so funktionierts ;)");
		j.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		j.setSize(300, 200);
		j.setVisible(true);
	}
}

und so aufrufen:
Java:
public class MainClass {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		GUI.drawWindow();
	}

}

Also das das so funktioniert weis ich, aber ist das auch die "feine englische Art"?
Vielen Dank schonmal :)

-GhostfaceChilla-
 

Phash

Top Contributor
fast

die Main Klasse ist nur dein Start - und auch nur bei lokalen Anwendungen - in WebAnwendungen gibt es gar keine MainKlasse. Und in Bibliotheken ja auch nicht.


Dein Ansatz ist schon ganz gut - und du bist schon beinahe bei der Objektorientierung angekommen.


Java:
import javax.swing.JFrame;
 
public class Gui{

   JFrame frame;
  public Gui(){
  frame = new JFrame("Ok so funktionierts");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //hier besser .dispose();
        frame.setSize(300, 200);
        frame.setVisible(true);
}



    public void drawWindow(){
       frame.setVisible(true);
       
    }
}

Du baust dir den Frame im Konstruktor, und setzt ihn mit der drawWindow() Methode auf sichtbar.

Java:
public class MainClass {
 
    public static void main(String[] args) {

        Gui meineGui = new Gui(); //Neues Objekt der Klasse Gui erzeugen

        meineGui.drawWindow(); //Methoden dieses Objekts aufrufen
    }
 
}

du instanzierst hier also ein Objekt der Klasse Gui, und rufst auf diesem Objekt eine Methode auf.
statische Aufrufe sind nur sehr selten sinnvoll - eine sinnvolle Anwendung davon ist in der Main Methode, und in einigen UtilityKlassen (z.b. Dinge wie Math)
 
Zuletzt bearbeitet:

GhostfaceChilla

Bekanntes Mitglied
Viel Dank :)
Wenn ich jetzt z.B Labels oder Button etc. mit anzeigen möchte, kann ich das alles in der "GUI" Klasse dann machen, also nicht extra weitere Klassen anlegen wie Label, Button etc oder?

-GhostfaceChilla-
 
Zuletzt bearbeitet:

Phash

Top Contributor
es gibt ja schon extra Klassen wie Label oder Button... die kannst du einfach verwenden...

du verwendets JFrame ja auch schon... (ich würde hier dann auch zu JButton und JLabel tendieren, damit du im Swing Kontext bleibst)


du kannst deiner JFrame instanz jederzeit Komponenten übergeben, schau dir einfach mal an, was JFrame für Methoden anbietet, und welche Methode sich zu adden einer Component eignen könnte :)
 

GhostfaceChilla

Bekanntes Mitglied
Okk.
Aber wenn ich jetzt z.B. mein komplettes GUI laden möchte, sprich dass Fenster + Label + Buttons etc, lade ich dann alles über den Konstruktor und setzte es dann mit einer Methode auf visible oder eher nicht?

-GhostfaceChilla-
 
Zuletzt bearbeitet:

Phash

Top Contributor
du baust dir eine Gui Klasse, und in dieser GuiKlasse fügst du alle Komponenten hinzu, die du für die Gui Klasse brauchst.
Du konfigurierst auch die hinzugefügten Komponenten dort.

(Später wird dir auffallen, dass das dann ziemlich viel wird, und du wirst Dinge auslagern wollen, aber das ist dann einfach nur eine Kaskade dessen, was du hier schon machst)

und dein Ansatz ist richtig, du baust im Konstruktor alles zusammen - deswegen heisst der ja so :)

dir bleibt aber überlassen, ob du "setVisible()" schon im Konstruktor oder erst nach der Instanzierung aufrufst.

der JFrame ist von "aussen" - also hier in der MainMethode nicht zugreifbar, du kannst den JFrame also nicht extern sichtbar setzen.
Du bietest dafür ja deine Methode Gui#setVisible() an
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
X Webseite auslesen ohne Quellcode zu splitten Java Basics - Anfänger-Themen 3
D Quellcode für cmd funktioniert nicht Java Basics - Anfänger-Themen 9
amelie123456 Objekt Farbe Quellcode Java Basics - Anfänger-Themen 4
M Mein quellcode wird nicht in der Konsole ausgegeben Java Basics - Anfänger-Themen 3
jhCDtGVjcZGcfzug Was genau ist mit diesem Quellcode gemeint? Java Basics - Anfänger-Themen 5
jhCDtGVjcZGcfzug Was ist mit diesem Quellcode gemeint? Java Basics - Anfänger-Themen 3
J Wie bestehenden Quellcode in IDE richtig übernehmen Java Basics - Anfänger-Themen 27
TimoN11 IntelliJ , Ausgabe von einem Quellcode in Eingabe eines Quellcodes Java Basics - Anfänger-Themen 1
H Quellcode Scanner Klasse Java Basics - Anfänger-Themen 2
P Quellcode LinkedList Java Basics - Anfänger-Themen 2
M Bitte um Hilfe bei Quellcode (Rekursion) Java Basics - Anfänger-Themen 6
F Quellcode wird nicht in cmd angezeigt Java Basics - Anfänger-Themen 8
N Erste Schritte Quellcode fehlerhaft Java Basics - Anfänger-Themen 2
J Methoden Quellcode DP Fibonaaci erklärt Java Basics - Anfänger-Themen 5
L Fehler in Quellcode?! Java Basics - Anfänger-Themen 3
D Generics ArrayList: Bug im Quellcode Java Basics - Anfänger-Themen 14
G Wie kann ich mein Quellcode als Programm vom desktop starten? Java Basics - Anfänger-Themen 1
Hacer Quellcode lesen Java Basics - Anfänger-Themen 13
M Greenfoot World und Actor Quellcode Java Basics - Anfänger-Themen 13
B Quellcode einelsen "line by line" (und abspeichern in file (txt) Java Basics - Anfänger-Themen 7
G Quellcode verstehen Java Basics - Anfänger-Themen 9
F Quellcode optimieren... Java Basics - Anfänger-Themen 4
M Verstehe das Programm(Quellcode) nicht!! Java Basics - Anfänger-Themen 12
U Java Quellcode Schaltjahr Java Basics - Anfänger-Themen 13
D Quellcode verstehen Java Basics - Anfänger-Themen 4
V Array ermitteln - in Quellcode speichern Java Basics - Anfänger-Themen 15
J Quellcode von einem Link kriegen? Java Basics - Anfänger-Themen 3
W Datentypen String in Quellcode umwandeln Java Basics - Anfänger-Themen 25
O Quellcode nach bestimmter Ausgabe durchsuchen Java Basics - Anfänger-Themen 14
J Java-Quellcode Java Basics - Anfänger-Themen 13
J Tabelle aus Website einlesen [nicht im Quellcode] Java Basics - Anfänger-Themen 6
T Quellcode zur .jar oder .exe Java Basics - Anfänger-Themen 7
D Verbesserungsvorschläge zum Quellcode Java Basics - Anfänger-Themen 15
P Suche Java Programme mit gutem/anfängertauglichem Quellcode Java Basics - Anfänger-Themen 8
M Quellcode kann nicht kompiliert werden Java Basics - Anfänger-Themen 6
S Grafische Oberfläche Quellcode ändern Java Basics - Anfänger-Themen 8
T Quellcode zu Jar? Java Basics - Anfänger-Themen 14
S Erste Schritte Fakultät Quellcode Java Basics - Anfänger-Themen 12
E Quellcode Erklärung Java Basics - Anfänger-Themen 8
N Feste Hardcodierte Pfade im Quellcode Java Basics - Anfänger-Themen 6
S Allgemein: Quellcode einrücken Java Basics - Anfänger-Themen 8
W Kurzer Quellcode klein aber oho! Java Basics - Anfänger-Themen 7
H frage zu meinem quellcode Java Basics - Anfänger-Themen 10
M String in Quellcode umwandeln Java Basics - Anfänger-Themen 9
S Textfragmente aus Quellcode lesen und abspeichern Java Basics - Anfänger-Themen 2
U Netzwerk Chatprogramm Quellcode funktioniert nicht Java Basics - Anfänger-Themen 6
A Quellcode aus diesem Forum für komerzielle Zwecke/Bachelor Thesis? Java Basics - Anfänger-Themen 4
F Datei Quellcode Java Basics - Anfänger-Themen 8
W Hilfe bei Interpretation von Quellcode Java Basics - Anfänger-Themen 8
A log4j - wie kann ich im Quellcode initialisieren statt in der properties-Datei? Java Basics - Anfänger-Themen 2
N Quellcode absichern? Java Basics - Anfänger-Themen 21
M mit java quellcode im browser öffnen Java Basics - Anfänger-Themen 1
hdi Programmier-Stil : Speicher vs. Quellcode Java Basics - Anfänger-Themen 67
M Quellcode verbessern Java Basics - Anfänger-Themen 6
M Brauche Hilfe beim Verstehen vom Quellcode Java Basics - Anfänger-Themen 4
I Kann nicht compilieren warum? Bei großen Quellcode. Java Basics - Anfänger-Themen 8
A Änderung im Quellcode > javac > keine Änderung in Kons Java Basics - Anfänger-Themen 6
C Quellcode richtig bisher? wie gehts weiter? Java Basics - Anfänger-Themen 13
S Problem mit url, inputStream und bytes beim Quellcode laden. Java Basics - Anfänger-Themen 6
D quellcode in webseite einbinden Java Basics - Anfänger-Themen 7
B Kann Quellcode von "Hanoi" nicht verstehen. Bitte Java Basics - Anfänger-Themen 4
D Fragen zu Quellcode QuickSorter Java Basics - Anfänger-Themen 13
F Quellcode & Ausgabe Java Basics - Anfänger-Themen 6
M Java Quellcode in eine exe datei umwandeln Java Basics - Anfänger-Themen 4
G Quellcode kommentieren Java Basics - Anfänger-Themen 6
S html quellcode runterladen Java Basics - Anfänger-Themen 2
D Quellcode richtig lesen lernen Java Basics - Anfänger-Themen 8
S Von einer jar.Datei den Quellcode. Java Basics - Anfänger-Themen 1
A Jar Datei im Quellcode einbinden Java Basics - Anfänger-Themen 3
G Problem mit Quellcode! Java Basics - Anfänger-Themen 15
D Import von Quellcode Java Basics - Anfänger-Themen 2
H Wo in GUI-Klasse bringe ich Quellcode unter? Java Basics - Anfänger-Themen 8
M Verstehe den Quellcode nicht ganz Java Basics - Anfänger-Themen 3
O mathematische Formel in quellcode Java Basics - Anfänger-Themen 5
M Quellcode einschränken?! Java Basics - Anfänger-Themen 6
L Fehler im simplen Quellcode! Java Basics - Anfänger-Themen 2
F 2x 16bit Werte zu einem 32bit und dann splitten mit 0xb Java Basics - Anfänger-Themen 1
T String splitten Java Basics - Anfänger-Themen 3
S Nutzereingabe splitten und in string array wieder ausgeben. Java Basics - Anfänger-Themen 1
Henri Filename splitten Java Basics - Anfänger-Themen 8
S Nummer splitten Java Basics - Anfänger-Themen 2
CptK Datentypen String splitten, ä,ö,ü, etc ignorieren Java Basics - Anfänger-Themen 1
J String splitten Java Basics - Anfänger-Themen 3
A String mit mehreren Zeilen splitten Java Basics - Anfänger-Themen 4
C Erste Schritte Regex - Datei einlesen und splitten Java Basics - Anfänger-Themen 4
J String splitten und weiter einarbeiten in einer Methode? Java Basics - Anfänger-Themen 11
S Java Text splitten mit Tabs, Zeilen, Zeichen und Klammern. Java Basics - Anfänger-Themen 6
C Zeilen in Array einlesen und splitten? Java Basics - Anfänger-Themen 17
MiMa Splitten eines Strings Java Basics - Anfänger-Themen 5
DestinatioN Problem beim splitten eines Satzes in Wörter und die Wörter in Buchstaben Java Basics - Anfänger-Themen 2
S splitten von arrays Java Basics - Anfänger-Themen 6
S Zahl an bestimmter Stelle splitten Java Basics - Anfänger-Themen 6
S String splitten und berichtigen? Java Basics - Anfänger-Themen 16
Z String splitten Java Basics - Anfänger-Themen 2
S String ab dem Wechsel Buchstaben zu Zahlen splitten Java Basics - Anfänger-Themen 14
S String splitten und in ArrayList speichern Java Basics - Anfänger-Themen 4
A String Mehrfach Splitten Java Basics - Anfänger-Themen 1
A Binärstrom splitten und in ArrayList adden Java Basics - Anfänger-Themen 1
Bluedaishi Textdateien splitten, neu schreiben Java Basics - Anfänger-Themen 13
X Regex splitten Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben