Hilfe bei GUI für Java Programm erstellen

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hi Leute,

ich soll für die Schule für folgende Programme eine GUI schreiben:

Code:
public class TestSpannung2 {
  public static void main(String[]args){
    Spannung2 sp2 = new Spannung2();
    System.out.println(sp2.gibSpannung());
    sp2.SpannungErhoehen();
    System.out.println(sp2.gibSpannung());
    
    for (int i = 0; i < 5 ; i++){
      sp2.SpannungErhoehen();
    }
    System.out.println(sp2.gibSpannung());
    
    sp2.SpannungSenken();
    System.out.println(sp2.gibSpannung());
    
     for (int i = 0; i < 5 ; i++){
      sp2.SpannungSenken();
    }
    System.out.println(sp2.gibSpannung());

  }
}
-----------------------------------------------------------
public class Spannung2 {

  private double spannung;
  
  private double mindestSpannung;
  private double hoechstSpannung;
  private double deltaU;

    public Spannung2(double mindestSpannung , double hoechstSpannung) {
    spannung = 230.0 ;
    
    this.mindestSpannung = mindestSpannung;
    this.hoechstSpannung = hoechstSpannung;
    deltaU = 10.0;
  }
  
  public void SpannungErhoehen(){
    if(spannung <= (hoechstSpannung - deltaU)){
       spannung = spannung + deltaU;
    }
       else System.out.println("Höher geht es nicht");
  }

  public void SpannungSenken() {
    if(spannung >= (mindestSpannung + deltaU)){
       spannung = spannung + deltaU;
    }
  }
  
  public void setzeSchrittweise(double deltaU){
    if(deltaU >0.0 && deltaU <= 10.0){
       this.deltaU = deltaU;
    }
  }
  
  public void setzeHoechstspannung(double hoechstSpannung){
       this.hoechstSpannung = hoechstSpannung;
  }
  
  public void setzeMindestSpannung(double mindestSpannung){
       this.mindestSpannung = mindestSpannung;
  }
  
  public String toString(){
    String str = "Spannung            = "+spannung+"\n"+
                 "Mindestspannung     = "+mindestSpannung+"\n"+
                 "HöchstSpannung      = "+hoechstSpannung+"\n"+
                 "Schrittweise        = "+deltaU+"\n";
    return str;
  }
  
  public void parameterAusgeben(){
    String s = this.toString();
    System.out.println(s);
  }
  
  public double gibSpannung() {
    return spannung ;
  }

  public void ausgeben(){
  System.out.println(spannung+"\n"+mindestSpannung+"\n"+hoechstSpannung+"\n"+deltaU);
  }

Die beiden Programme gehören zusammen, nur in dem ersten ist die main Anweisung

Nur leider habe ich die Schule gewechselt und die sind schon viel weiter und ich komme nicht so wirklich mit, da ich auch noch nie mit Java gearbeitet habe.

Ich hoffe ihr könnt mir erzählen, was die einzelnen Dinge in dem Programm machen und wie ich dazu eine entsprechende GUI machen kann!!!!


Vielen Dank
 

0x7F800000

Top Contributor
Die beiden Programme gehören zusammen
Was heisst "beiden Programme", das ist nur ein Programm mit mehreren Klassen, wie sonst überall üblich...

Nur leider habe ich die Schule gewechselt und die sind schon viel weiter und ich komme nicht so wirklich mit, da ich auch noch nie mit Java gearbeitet habe.
Naja, wenn du schonmal programmiert hast, dann lies dir eben ein Grundlagenbuch deiner Wahl durch, online gibt es auch sehr feine sachen, etwa die Insel (wobei du davon nur die paar kleinen unterkapiteln über die Grundlagen brauchst, um das alles durchzulesen braucht man bisschen Zeit). Wenn du noch nie was programmiert hast: nun ja... dann lies eben schneller (in der schule hat man doch sonst ewig viel zeit für alles mögliche), hol dir ein wenig unterstützung von Bekannten oder heuere einen Nachhilfelehrer an, wenn das taschengeld es erlaubt...

Ich hoffe ihr könnt mir erzählen, was die einzelnen Dinge in dem Programm machen und wie ich dazu eine entsprechende GUI machen kann!!!!
Das Programm ist an sich recht sinnfrei und tut (wie so oft bei beispielprogrammen) im grunde nichts. Es soll nur an die Syntax gewöhnen. Irgendwelche komplizierten Algorithmen stecken da nicht drin, das ist einfach ein Einsteigerbeispiel mit einer doofen Klasse, ein paar double-membervariablen und ein paar gettern und settern (die sich hinter den "pedagogisch sinnvollen" *hust* eingedeutschten begriffen verstecken) Also eigentlich code, der normalerweise von der IDE automatisch erzeugt wird.

Über die GUI findest du auch mehr als genug zB. in der Insel (dann aber Swing, nicht AWT), es lohnt sich evtl auch in der FAQ nachzuschauen.
 

Campino

Top Contributor
hi,

weil ich gerade Zeit und Langeweile habe, schreib ich mal mehr als "lies ein gutes Buch" ;)

Also: das Programm setzt sich aus zwei Klassen zusammen (Objektorientierung kennst du? Sonst wäre das das erste, worüber du lesen solltest. Ein gutes Buch hat Andrey ja verlinkt).

Die eine Klasse heißt "TestSpannung2" , sie enthält den Startpunkt des Programms, die main- Funktion (Funktionen heißen in Java eigentlich Methoden, in anderen Programmiersprachen auch Prozedur).

Den Rest als Kommentar:

Code:
public class TestSpannung2 {
//Main- Funktion, Programmstart:   
public static void main(String[]args){
//Anlegen eines neuen Spannung2- Objekts mit dem Namen sp2 
//interessanter weise mit einem parameterlosen Konstruktor, den die Spannung2- Klasse garnicht hat. Schlag deinen Lehrer.    
Spannung2 sp2 = new Spannung2();
/*den Spannungswert von sp2 ausgeben
hierzu wird der Standard- Output- Stream (System.out) verwendet und aufgefordert, den Rückgabewert der Funktion gibSpannung von sp2 zu "printen". Da System.out die Konsole ist, wird der Wert also in die Konsole geschrieben */
    System.out.println(sp2.gibSpannung());
//die Methode spannungErhoehen von sp2 aufrufen (Hallo? Schon mal was von nameConventions gehört? Sag deinem Lehrer, er soll euch so programmieren beibringen, wie ihr es später anwenden sollt!)
    sp2.SpannungErhoehen();
//nochmal die Spannung ausgeben, wie oben
    System.out.println(sp2.gibSpannung());
   
/*Eine for- Schleife. i wird von 0 bis 4 (weil vier die letzte Zahl <5 ist) hochgezählt (i++). In jedem Zählschritt wird die Spannung erhöht */
    for (int i = 0; i < 5 ; i++){
      sp2.SpannungErhoehen();
    }
//Spannung ausgeben, wie oben
    System.out.println(sp2.gibSpannung());
   
//jetzt wird eine andere Methode von sp2, nämlich SpannungSenken ausgegeben
//Schlag deinen Lehrer, weil diese Methode die NameConventions nicht erfüllt
    sp2.SpannungSenken();
//Ja, das kennen wir...
    System.out.println(sp2.gibSpannung());
   
//Schleife wie oben, diesmal Spannung senken
     for (int i = 0; i < 5 ; i++){
      sp2.SpannungSenken();
    }
//und wieder ausgeben...
    System.out.println(sp2.gibSpannung());

  }
}


//Hier folgt die zweite Klasse, die in einer anderen Datei stehen muss
public class Spannung2 {

/*zunächt hat sie ein paar Klassenvariablen/Eigenschaften/Properties (in Java heißen sie Eigenschaften, in anderen Programmiersprachen sind andere Begriffe üblich), deshalb schreib ich mal viele hin, vielleicht kennst du wenigstens einen. 
Diese Variablen sind alle vom Datentyp Double, können also Kommazahlen enthalten*/
  private double spannung;
 
  private double mindestSpannung;
  private double hoechstSpannung;
  private double deltaU;

/*
Der Konstruktor erzeugt ein neues Spannung2- Objekt. Er wird oben allerdings nicht verwendet, die Parameter fehlen im obigen Aufruf. 
*/
    public Spannung2(double mindestSpannung , double hoechstSpannung) {
//die Spannung- Variable wird auf 230 gesetzt.     
spannung = 230.0 ;
   
//die mindestSpannung dieses Objekts (deshalb das "this") wird auf den übergebenen Parameter gesetzt
    this.mindestSpannung = mindestSpannung;
//dasselbe für die Höchstspannung
    this.hoechstSpannung = hoechstSpannung;
//deltaU wird auf 10.0 gesetzt    
deltaU = 10.0;
  }

/* Das ist die SpannungErhöhen- Methode, die in der anderen Klasse aufgerufen wird */ 
  public void SpannungErhoehen(){
//Überprüfen, ob die Spannung schon an der höchstSpannung angekommen ist
    if(spannung <= (hoechstSpannung - deltaU)){
//und wenn nicht um deltaU erhöhen
       spannung = spannung + deltaU;
    }
//ansonsten eine Meldung über den Standard- Output (Konsole) ausgeben
       else System.out.println("Höher geht es nicht");
  }

/*Spannung senken funktioniert wie SpannungErhoehen, allerdings wird hier runtergezählt und mit der mindestSpannung geprüft*/
  public void SpannungSenken() {
    if(spannung >= (mindestSpannung + deltaU)){
       spannung = spannung + deltaU;
    }
  }
 
/* Soll wohl setzeSchrittweite heißen, setzt nämlich deltaU, also wie weit bei aufruf von erhoehe/senkeSpannung hoch bzw. runter gezählt wird.  */
  public void setzeSchrittweise(double deltaU){
    if(deltaU >0.0 && deltaU <= 10.0){
       this.deltaU = deltaU;
    }
  }

/* Diese Methode setzt die hoechstSpannung auf einen neuen Wert */ 
  public void setzeHoechstspannung(double hoechstSpannung){
       this.hoechstSpannung = hoechstSpannung;
  }

/* Diese Methode setzt die mindestSpannung  auf einen neuen Wert*/ 
  public void setzeMindestSpannung(double mindestSpannung){
       this.mindestSpannung = mindestSpannung;
  }
 
/* Diese Methode überschreibt die toString()- Funktion, so dass sie die Variablenwerte ausgibt. 
Sie wird z.B. benutzt, wenn du System.out.println() das Objekt als Parameter gibst.  */
  public String toString(){
    String str = "Spannung            = "+spannung+"\n"+
                 "Mindestspannung     = "+mindestSpannung+"\n"+
                 "HöchstSpannung      = "+hoechstSpannung+"\n"+
                 "Schrittweise        = "+deltaU+"\n";
    return str;
  }

/* parameterAusgeben (da hat jemand NameConventions gelernt ;) ) nutzt den Trick vom toString, allerdings nicht konsequent System.out.println(this); alls einziger Befehl im Methodenrumpf hätte denselben Effekt */ 
  public void parameterAusgeben(){
    String s = this.toString();
    System.out.println(s);
  }

/* Diese Methode gibt die Spannung zurück */ 
  public double gibSpannung() {
    return spannung ;
  }

/* Diese Methode schreibt alle Variablen in den Standardoutput. Wenn man mal davon absieht, dass hier nicht beschriftet wird, welcher Wert welcher ist, tut sie dasselbe wie parameterAusgeben */
  public void ausgeben(){
  System.out.println(spannung+"\n"+mindestSpannung+"\n"+hoechstSpannung+"\n"+deltaU);
  }

So, ich hoffe, dass hilft ein bisschen,

campino
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Brauch Hilfe für Java Programm Java Basics - Anfänger-Themen 12
Kerstininer Vererbung Hilfe beim lernen von Objektorientierung für eine Klausur Java Basics - Anfänger-Themen 10
F Hilfe für einen Anfänger! Java Basics - Anfänger-Themen 4
S Hilfe für Aufgabe Java Basics - Anfänger-Themen 4
A Erste Schritte Hilfe für for-Schleife Java Basics - Anfänger-Themen 1
C Stack und Queue in Aktion (Bitte Hilfe für die Klausur) Java Basics - Anfänger-Themen 7
C Ich brauche hilfe für meine Klausur Java Basics - Anfänger-Themen 13
D Erste Schritte suche hilfe für db-anbindung Java Basics - Anfänger-Themen 36
J Hilfe für Anfänger Java Basics - Anfänger-Themen 8
D Brauche Hilfe für mein übungsprogramm Java Basics - Anfänger-Themen 16
C Hilfe für Spielerweiterung gesucht Java Basics - Anfänger-Themen 4
C Hilfe für Kommentar-Zapper gesucht / Umgang mit Console Java Basics - Anfänger-Themen 0
M Erste Schritte KI für 4 Gewinnt Hilfe! Java Basics - Anfänger-Themen 5
S Klassen Brauche Hilfe bei Erstellung einer Klasse für einen Tachenrechner!!! Java Basics - Anfänger-Themen 6
H mysql brauche hilfe, wer kann eine (längere) aufgabe für mich erledigen Java Basics - Anfänger-Themen 2
E HILFE Projekt für die Schule--> Bilder einfügen Java Basics - Anfänger-Themen 9
B Erste Schritte HILFE Brauche ein Beispiel für korrekte Syntax mit Semantikfehlern Java Basics - Anfänger-Themen 6
B Bitte Hilfe für Funktionalität eines Sudokus Java Basics - Anfänger-Themen 8
B Erste Schritte Brauche Hilfe für ein UML Diagramm Java Basics - Anfänger-Themen 7
E Kleine Hilfe für einen Einsteiger Java Basics - Anfänger-Themen 18
R Hilfe für einen Umsetzungsansatz Java Basics - Anfänger-Themen 2
P Hilfe für undo / redo Java Basics - Anfänger-Themen 5
L Brauche bitte dringend Hilfe für Klausur Java Basics - Anfänger-Themen 8
M Brauche Hilfe bei Javaapplication für JuFo Java Basics - Anfänger-Themen 21
S Hilfe für Autocomplete Java Basics - Anfänger-Themen 6
P Hilfe für JComboBox, bmp einbinden/bestimmte punkte auf bmp Java Basics - Anfänger-Themen 3
A Hilfe für Änfänger Java Basics - Anfänger-Themen 11
1 Ansatz/Hilfe für ein Tool gesucht Java Basics - Anfänger-Themen 4
P Brauche Hilfe für JPanel im JScrollPane und Abstände Java Basics - Anfänger-Themen 2
M Hilfe für "referatsthema" Java Basics - Anfänger-Themen 4
L Hilfe für Schulprojekt Java Basics - Anfänger-Themen 10
R Umgebungsvariable java -cp gibt immer Java-Hilfe... Java Basics - Anfänger-Themen 3
E Hilfe bei rekursiver Funktion Java Basics - Anfänger-Themen 3
H pdf stempel - Hilfe erbeten Java Basics - Anfänger-Themen 6
KogoroMori21 Wann ist der richtige Zeitpunkt, um sich Hilfe zu suchen? (Bin Informatik-Student) Java Basics - Anfänger-Themen 10
A Hilfe beim Lesen von Pfaden und Systemvariablen Java Basics - Anfänger-Themen 3
F RegEx Hilfe Java Basics - Anfänger-Themen 5
S Hilfe bei Endlosschleife Java Basics - Anfänger-Themen 2
S Hilfe bei Praktischen Aufgaben von Arrays Java Basics - Anfänger-Themen 39
U Ich bräuchte Hilfe Java Basics - Anfänger-Themen 1
Say abstract class und Objekt erzeugen - Dringend Hilfe Java Basics - Anfänger-Themen 10
Justin4687 Benötige Hilfe bei folgender Aufgabe Java Basics - Anfänger-Themen 2
aero043 Hilfe bei BlueJ Hausübung Java Basics - Anfänger-Themen 27
S Hilfe zu einer Aufgabe Java Basics - Anfänger-Themen 5
P Hilfe gesucht Java Basics - Anfänger-Themen 11
D Hilfe bei Calculator Test Java Basics - Anfänger-Themen 15
R Hilfe bei Aufgabe Java Basics - Anfänger-Themen 4
Zentriks Hilfe zu Sieb des Eratosthenes ohne boolean Java Basics - Anfänger-Themen 5
R Java Bücher hilfe Java Basics - Anfänger-Themen 9
U HILFE! - per ActionListener Felder enablen....... Java Basics - Anfänger-Themen 5
I Scheduling: "Quartz" verwenden, Hilfe bei Umstellung Java Basics - Anfänger-Themen 3
I Hilfe bei Klausur Frage Java Basics - Anfänger-Themen 8
L Hilfe! Liste mit Items werden ausgegeben aber nicht in zufälliger Reihenfolge Java Basics - Anfänger-Themen 6
Ekooekoo Hilfe spiel Java Basics - Anfänger-Themen 5
SpiritsHuner Hilfe!! Java Basics - Anfänger-Themen 16
Lacotto Java Kurs Aufgaben Hilfe Java Basics - Anfänger-Themen 14
V Hilfe bei Implementierung einer boolean Methode Java Basics - Anfänger-Themen 6
M HILFE JPanel - Graphics Java Basics - Anfänger-Themen 1
D Hilfe bei einer Aufgabe mit for-Schleife Java Basics - Anfänger-Themen 6
X Hilfe beim Übertragen in eine For-Schleife Java Basics - Anfänger-Themen 1
Neuling47 Denkfehler? Hilfe Java Basics - Anfänger-Themen 11
S Hilfe bei Umänderung von Java Code Java Basics - Anfänger-Themen 16
Robert_Klaus Hamster java Simulation Hilfe bei einer Aufgabe Java Basics - Anfänger-Themen 5
X Erste Schritte Hilfe bei einem kleinen Spiel. Java Basics - Anfänger-Themen 19
D Bitte um Hilfe muss es schnellstmöglich erledigen Java Basics - Anfänger-Themen 15
L Hilfe bei RegEx Java Basics - Anfänger-Themen 4
I Bitte um Hilfe zu unterstehenden Code Java Basics - Anfänger-Themen 6
B Brauche Hilfe zu einem Code Java Basics - Anfänger-Themen 5
Neuling47 bräuchte dringend hilfe Java Basics - Anfänger-Themen 6
D Bräuchte Hilfe im Bezug zum printarray() Java Basics - Anfänger-Themen 4
M Bitte um Hilfe bei 2DArrays Java Basics - Anfänger-Themen 8
HeiTim Array hilfe Java Basics - Anfänger-Themen 14
M LCD-Ziffern-Hilfe Java Basics - Anfänger-Themen 6
özkan hilfe!! Java Basics - Anfänger-Themen 4
C Hilfe bei einem Anfängerprojekt Java Basics - Anfänger-Themen 25
D Abrechnung bitte um hilfe Java Basics - Anfänger-Themen 25
J Brauche Hilfe bei for-each Aufgabe Java Basics - Anfänger-Themen 1
D Zahlentabelle Anfänger braucht Hilfe Java Basics - Anfänger-Themen 1
HeiTim Brauche Hilfe soll ein nummeriertes Feld ausgeben lassen Java Basics - Anfänger-Themen 17
S Interaktive Abfrage, Hilfe mit Schleifen! Java Basics - Anfänger-Themen 6
N Hilfe bei der Installation Java Basics - Anfänger-Themen 2
J Brauche Hilfe bei Aufgabe Java Basics - Anfänger-Themen 4
S Hilfe bei Programmierung einer Hotelabrechnung Java Basics - Anfänger-Themen 5
enjoykimii Strukturierte Programmierung Hilfe Java Basics - Anfänger-Themen 29
H Bräuchte hilfe Java Basics - Anfänger-Themen 3
D Snake-Spiel ähnliche Aufgabe Hilfe Java Basics - Anfänger-Themen 3
H Brauche Hilfe Java Basics - Anfänger-Themen 2
D Dijkstra Algorithmus Hilfe!! Java Basics - Anfänger-Themen 9
H Hilfe Java Basics - Anfänger-Themen 6
H Brauche hilfe Java Basics - Anfänger-Themen 3
M Hilfe - Array Aufgabe Java Basics - Anfänger-Themen 8
R Schulaufgabe, Bruache Hilfe mit non-static Methoden Java Basics - Anfänger-Themen 2
kevkev Hilfe bei Schiffe versenken Java Basics - Anfänger-Themen 5
FelixxF Erste Schritte Hilfe bei Fußball Manager Java Basics - Anfänger-Themen 2
C Brauche Hilfe beim Schreiben eines Programmes :/ Java Basics - Anfänger-Themen 1
C Brauche Hilfe um ein Programm zu schreiben Java Basics - Anfänger-Themen 8
josfe1234 Hilfe access denied ("java.io.FilePermission" " " "read") Java Basics - Anfänger-Themen 12
Vivien Hilfe bei Type Conversion Java Basics - Anfänger-Themen 3
Leo0909 Ich brauche Hilfe bei dieser Aufgabe Java Basics - Anfänger-Themen 2
D Hilfe beim Erzeugen eines Arrays NullPointerException wird ausgelöst Java Basics - Anfänger-Themen 11

Ähnliche Java Themen

Neue Themen


Oben