Здравствуйте!
Возник вопрос по поводу большой задачи "CashMachine (11)".
Конкретно, валидатор ругается на следующее:
"Метод execute() класса LoginCommand должен бросать исключение, если пользователь ввел "exit"."
Сам класс:
public class LoginCommand implements Command
{
private String CARD_NUMBER = "123456789012";
private String CARD_PIN = "1234";
String cardNumber, cardPinNumber;
private boolean valid = false;
@Override
public void execute() throws InterruptOperationException
{
while (!valid){
ConsoleHelper.writeMessage("Input card number and PIN number: ");
cardNumber = ConsoleHelper.readString();
cardPinNumber = ConsoleHelper.readString();
if (!validData(cardNumber, cardPinNumber)) {
ConsoleHelper.writeMessage("Invalid card number or PIN.");
continue;
}
if(isVerified(cardNumber, cardPinNumber)) valid = true;
else ConsoleHelper.writeMessage("Invalid card number or PIN.");
}
ConsoleHelper.writeMessage("Verification successful.");
}
private boolean validData (String cn, String pn)
{
if (cn == null || pn == null || cn.length() != 12 || pn.length() != 4) return false;
else return true;
}
private boolean isVerified(String cn, String pn)
{
if (cn.equals(CARD_NUMBER) && pn.equals(CARD_PIN)) return true;
else return false;
}
}
///В чем заключается проблема?