Ich habe ein Protokoll im System auf meiner Anwendung, die einen Satz von vordefinierten Benutzern wie so hat:Java - Melden Sie sich als Benutzer oder Administrator an? Inheritance
User user = new User("tommy", "tommy", false);
User user2 = new User("phil2", "phil2", false);
User user3 = new User("phil", "phil", true);
Admin admin = new Admin("benji", "benji", true);
Diese werden dann zu einer Anordnung von Benutzern
userArray.add(user);...
die die Login() Methode durchläuft und überprüft ihre Anmeldeinformationen beim Versuch, sich anzumelden.
Die Benutzer können sich wie erwartet anmelden, aber Wie kann ich den Administrator-Account anmelden? Beachten Sie, dass der Administrator immer noch ein Benutzer ist, nur ein spezieller Benutzertyp mit einem anderen Menü, wenn er eingeloggt ist. Derzeit wird das Administratorkonto nicht als Benutzer erkannt.
In meiner Klasse User Ich habe dies: Der Admin erbt von Benutzern, da es ein Benutzer:
public class Admin extends User {
public Admin(String username, String password, boolean av) {
super(username, password,av);
}
LogIn() sieht wie folgt aus:
public void LogIn() {
Scanner in = new Scanner(System.in);
System.out.println(" Welcome to the system \n Enter your Username and Password to continue \n Username: ");
String temp = in.nextLine();
System.out.println(" Password: ");
String temp2 = in.nextLine();
//while(LOCount != 3){
for (int i = 0; i < userArray.size(); i++) {
if (userArray.get(i).CheckUsername(temp) && userArray.get(i).CheckPassword(temp2)) {
// if(userArray.get(i) instanceof User.Admin){
UserMenu();
Checkusername() & check () wie gefordert:
public Boolean CheckPassword(String password) {
return this.password.equals(password);
}
public Boolean CheckUsername(String username) {
return this.username.equals(username);
}
Ich bin neu mit Vererbung, also jede mögliche Hilfe, die ich g sein würde rateful für, danke!
zeigen Sie Ihren logIn() Code –
Ich werde es jetzt zur Hauptfrage hinzufügen. hinzugefügt – user3620181
Sie Frage ist so seltsam, verwenden Sie JAAS? –