Bitte um Hilfe mit Hausaufgabe

Summer2017

Neues Mitglied
Code:
public class Monat {

        private String monatsname;
        private int monatszahl;
      
        private Monat (){
        {String monatsname; int monatszahl; }
        {
        } {
          
            this.monatsname = monatsname;
            this.monatszahl = monatszahl;
          
        Monat Monat1 = new Monat ();
        Monat Monat2 = new Monat();
        Monat Monat3 = new Monat();
        Monat Monat4 = new Monat();
        Monat Monat5 = new Monat();
        Monat Monat6 = new Monat();
        Monat Monat7 = new Monat();
        Monat Monat8 = new Monat();
        Monat Monat9 = new Monat();
        Monat Monat10 = new Monat();
        Monat Monat11 = new Monat();
        Monat Monat12 = new Monat();
      
      
      
        {
        Monat1.monatsname = "Januar";
        Monat1.monatszahl = "1";
        Monat2.monatsname = "Februar";
        Monat2.monatszahl = "2";
        Monat3.monatsname = "Maerz";
        Monat3.monatszahl = "3";
        Monat4.monatsname = "April";
        Monat4.monatszahl = "4";
        Monat5.monatsname = "Mai";
        Monat5.monatszahl = "5";
        Monat6.monatsname = "Juni";
        Monat6.monatszahl = "6";
        Monat7.monatsname = "Juli";
        Monat7.monatszahl = "7";
        Monat8.monatsname = "August";
        Monat8.monatszahl = "8";
        Monat9.monatsname = "September";
        Monat9.monatszahl = "9";
        Monat10.monatsname = "Oktober";
        Monat10.monatszahl = "10";
        Monat11.monatsname = "November";
        Monat11.monatszahl = "11";
        Monat12.monatsname = "Dezember";
        Monat12.monatszahl = "12";
        }
        }
}
}
Hallo zusammen! Ich muss so ein Programm schreiben.
a) Erstellen Sie eine Datenstruktur Monat, die einzelne Monate beschreibt.
• Diese benötigt folgende private Eigenschaften:
o String monatsname (z.B. „Januar“)
o int monatszahl ( z.B. 1)
• Weiterhin benötigt diese Datenstruktur folgende Methoden:
o Einen private Konstruktor: Monat(String monatsname, int monatszahl)
o Getter - Methoden für die private Variablen
o getVorherigerMonat()  liefert die Konstante, die den vorherigen Monat darstellt, z.B. liefert Monat.JANUAR.getVorherigerMonat() den Wert Monat.DEZEMBER
• Erstellen Sie abschießend im Klassenrumpf für alle 12 Monate Konstanten, die jeweils mit dem Monatsnamen und der Monatszahl instanziiert werden. Jede Konstante ist dabei ein unveränderliches Exemplar der Klasse Monat.
b) Erstellen Sie die Datenstruktur Aktienwert, in der die Monatskurswerte gespeichert werden. Es wird jeweils ein Wert pro Monat gespeichert.
• Dafür benötigen Sie mindestens diese private Eigenschaften:
o Monat monat (z.B. Monat.JANUAR)
o double wert (z.B. „15.07“)
• Erstellen Sie zusätzlich einen Konstruktor, die Getter-Methoden für beide Variablen und die Setter-Methode für den Wert.


Könnte jemandem vllht mir mit beide Aufgaben weiter helfen? Es wäre echt toll, weil ich nicht so viele Ahnung von Programmierung habe...
 

Meniskusschaden

Top Contributor
Da sind noch einige Fehler enthalten:
  • Du versuchst, im Konstruktor gleich alle zwölf Monate auf einmal zu erzeugen. Der Konstruktor ist aber dazu gedacht, mit einem Aufruf genau einen Monat zu erzeugen.
  • Der Konstruktor hat keine Parameter. Die gehören in die runden Klammern.
  • Die Monate sind nicht als statische Klassenkonstanten deklariert, sondern als lokale Variablen im Konstruktor. Außerdem haben sie nicht die gewünschten Namen.
  • Die Zuweisung der Monatszahl erfolgt mit dem falschen Datentyp (String statt int). Das ist hier aber ohnehin überflüssig.
  • Das Setzen von Monatsname und Monatszahl sollte mit der Zuweisung der Konstruktor-Parameter zu den privaten Eigenschaften bereits erledigt sein.
Außerdem gibt es einige überflüssige Klammern.
 

Meniskusschaden

Top Contributor
Na super, das ist ja mal richtig gut für unser Forum. Soll das jetzt nur ein Antwortverbot für die übrigen Forenmitglieder sein, oder darf die TE auch nichts mehr dazu schreiben?:confused:
Wenn man hier keine Antworten mehr möchte, sollte man einfach schreiben, dass das Problem gelöst ist.
 
X

Xyz1

Gast
Na dann schreibe ruhig weiter ontopic. Keineswegs wollte ich irgendwen von irgendwas zurückhalten. ^^ (Ist nur eine Info gewesen)
 

Meniskusschaden

Top Contributor
Ich finde es einfach nur ärgerlich, wenn hier Diskussionen verloren gehen, weil es sofort auf die PN-Ebene geht. Das führt den Sinn des Forums ad absurdum.

EDIT: Mir ist schon klar, dass dein Hinweis nicht negativ gemeint war, sondern uns sicher nur unnötigen Aufwand sparen sollte.
 

Neue Themen


Oben