Java Kurs Aufgaben Hilfe

Lacotto

Mitglied
Hallo zusammen,
ich bin überfragt und brauche eine Erklärung zu folgender Aufgabenstellung:

Detektiv Duke hat vor lauter Aufregung um Paco selbst sein Passwort vergessen. Bei Aufräumarbeiten im Büro hat Duke allerdings seinen Passwortgenerator wiedergefunden, mit dem er das Passwort früher einmal erstellt hat. Vielleicht findet er sein altes Passwort ja noch im Speicher?

Die Klasse Password ist verschlüsselt und deswegen von Menschen nicht sichtbar.

Bekannt ist nur, dass die Klasse PasswordGenerator eine Methode getPassword() besitzt, welche einen String zurückgibt.

Lege in der Klasse Office ein Attribut password vom Typ String und eine Methode printPassword() an. Erzeuge weiterhin ein Objekt der Klasse PasswordGenerator und weise es der bereits deklarierten Variable pg zu.

Rufe in der Methode printPassword() die Methode getPassword() auf dem Objekt vom Typ PasswordGenerator auf und speichere das Ergebnis in dem Attribut password.

Gebe das Attribut password anschließend in einer eigenen Zeile aus.

Datei Office.java (die einzig änderbare Datei)


class Office {
PasswordGenerator pg;

String password;
void printPassword(){
return pg;
pg = new PasswordGenerator();
pg.getPassword();

System.out.println(password);
}


}

Datei PasswordGenerator

class PasswordGenerator {

Password password = new Password();

public String getPassword() {
return password.getPassValue();
}
}

Datei Story.java


class Story {
public static void main(String[] args) {
Office office = new Office();
office.printPassword();
}
}


Folgende Fehlermeldung wird mir angezeigt
StdErr: ./Office.java:6: error: incompatible types: unexpected return value
return pg;
^
1 error
 
Java:
void printPassword(){
return pg;
pg = new PasswordGenerator();
pg.getPassword();

System.out.println(password);
}
du sagst "mach methode und gib sofort pg zurück " ( der rest wird niemals ausgeführt )
aber deine methoden definition sagt "ich gebe nichts zurück" da dein rückgabe wert NICHTS ist
 
Java:
PasswordGenerator printPassword(){

pg = new PasswordGenerator();
pg.getPassword();

System.out.println(password);
return pg;
}
warum du überhaupt den generator zurück gibst ist mir ein rätsel
 
ich dachte es sei teil der Aufgabe, lasse mich aber gern eines besseren belehren.
Ich versuche mir das seit 3 Tagen selbst beizubringen. Bitte entschuldigt wenn die Fragen doof erscheinen.
 
Lege in der Klasse Office ein Attribut password vom Typ String
hast du das getan?

Rufe in der Methode printPassword() die Methode getPassword() auf dem Objekt vom Typ PasswordGenerator auf und speichere das Ergebnis in dem Attribut password.
das kannst du auch nicht getan haben da du kein passwort attribut hast

von return werten steht nirgendsd irgendwas

Gebe das Attribut password anschließend in einer eigenen Zeile aus.
kannst du auch nicht haben da du immer noch kein passwort attribut in der klasse hast
 
oh bruh... hab ich überlesen


also du gettest das passwwort vom generator
aber speicherst es nicht in passwort ab
 
Bekannt ist nur, dass die Klasse PasswordGenerator eine Methode getPassword() besitzt, welche einen String zurückgibt.
Überlege was stellt das dar? Das könte doch ein get.... sein.
Wie sollte das Attribut sein doch wohl nicht öffentlich.

Du sollst auch hier das PW nicht Ausgeben auf der Konsole.

Wo sollst du das Objekt erstellen?
 
dies würde der ersten Aufgabe mehr entsprechen

Java:
  class PasswordGenerator {

         private final String password = "123456";

         public String getPassword() {
             return password;
        }
    }
 

Zurück
Oben