# Parameterkonstruktoren



## Eclipsenoob (29. Nov 2015)

Hallo Java-Team,

ich bin seit einer halben Stunde an einem Punkt einer Hausaufgabe und komme nicht weiter.
Ziel ist es innerhalb der gleichen Klasse einen zweiten Parameterkonstruktor zu erstellen,
der nicht wie der erste zwei variablen übergeben bekommt, sondern zwei Punkte.
Jedoch scheitert es genau daran. Ich bekomme immer den Fehler: "The blank final field y may not have been initialized". So lautet mein Code:

```
public Direction (Point n, Point m){
      
}
```
Und mein erster Parameterkonstruktor lautet: 

```
public Direction(double x, double y){
        this.x = x;
        this.y = y;
```

Danke für die Hilfe


----------



## stg (29. Nov 2015)

Ja, und was vertsehst du an der Fehlermeldung nicht? Die ist doch sehr eindeutig...


----------



## Eclipsenoob (29. Nov 2015)

Was soll ich daran verstehen??
Selbst wenn ich es davor initialisiere in der Klasse, dann meckert eclipse beim ersten Parameterkonstruktor rum.


----------



## InfectedBytes (29. Nov 2015)

y muss in jedem Konstruktor ein Wert zugewiesen werden und das tust du nunmal nicht.
Also entweder in dem Konstruktor y einen Wert zuweisen, oder von dem Konstruktor den anderen aufrufen.


----------



## Eclipsenoob (29. Nov 2015)

Wir sollen es aber allgemein programmieren. Also so, dass im Nachhinein x und y einem wert zugewiesen werden können.


----------



## InfectedBytes (29. Nov 2015)

dann musst du sinnvollerweise das final entfernen. final sagt nämlich aus, dass der Wert zur Konstruktion festgelegt werden MUSS und danach nie mehr verändert werden kann.


----------



## Eclipsenoob (29. Nov 2015)

Genau da tritt dann das nächste Problem auf 
in der Aufgabenstellung steht: "

Schreiben Sie eine Klasse Point. Ein Punkt soll zwei *konstante*, private Fließkomma-Attribute x und y zum Speichern seiner Position bereithalten."
Das müsste dann ja final sein oder?


----------



## InfectedBytes (29. Nov 2015)

Die Klasse POINT....oben schreibst du aber die Klasse Direction. Für diese gilt das dann vermutlich nicht^^


----------



## Eclipsenoob (29. Nov 2015)

Sorry, das falsche kopiert 
"Schreiben Sie eine Klasse Direction. Eine Richtung soll zwei konstante, private Fließkomma-Attribute x und y zum Speichern der Richtung bereithalten"


----------



## InfectedBytes (29. Nov 2015)

dann musst du die werte auch im konstruktor zuweisen
y=a.y - b.y;


----------

