#java #class #variables #java.util.scanner #string-matching
Вопрос:
Я пытаюсь делать SignUp
и LogIn
сценарии. (имя пользователя и пароль)
И я делал их в 2 отдельных классах.
Но я не знаю, как их соединить.
Я хочу SignUp
, чтобы имя пользователя совпадало LogIn
с именем пользователя и совпадало с паролем.
Вот класс регистрации:
import java.util.*;
public class SignUp {
Scanner input = new Scanner(System.in);
public static String username;
public static String password;
public void vars(String username, String password) {
this.username = username;
this.password = password;
}
public void usernameMethod() {
Scanner input = new Scanner(System.in);
System.out.println("Your Username:");
username = input.next();
}
public void passMethod() {
System.out.println("Your Password:");
password = input.next();
}
public static void main(String[] args) {
System.out.print("SIGN UPnn");
SignUp Adam = new SignUp();
Adam.vars(username, password);
Adam.usernameMethod();
Adam.passMethod();
System.out.println("Signed Up Successfully!");
}
}
А вот класс входа в систему:
import java.util.*;
public class LogIn {
public static void main(String[] args) {
String username2 = null;
String password2 = null;
Scanner input = new Scanner(System.in);
SignUp signUp = new SignUp();
signUp.vars(username2, password2);
System.out.println("Your Username:");
username2 = input.next();
while (!username2.contentEquals(SignUp.username)) {
System.out.print("That doesn't match our records! Try again.");
username2 = input.next();
}
if (username2.contentEquals(SignUp.username)) {
System.out.print("Your Password:");
password2 = input.next();
if (password2.contentEquals(SignUp.password)) {
System.out.print("Enjoy the Game!");
}
}
}
}
Комментарии:
1. 1) Вы никогда не звоните
usernameMethod
, илиpassMethod
, поэтому эти свойства никогда не задаются. 2) Ваши переменные не должны быть статичными2. но если переменные не статичны, это вызовет эту ошибку, когда я получу метод= (Невозможно сделать статическую ссылку на пароль нестатического поля)