я следующие классы в проекте:Как создать банковский счет с пользовательским вводом?
- счета
- Заказчик
- Имя: Fname и LName (оба строковых полей)
- Дата: год, месяц, день (все являются ИНТ поля)
- Bank: содержит набор счетов
- InputReader: считывает ввод с клавиатуры
Объекту Account требуется объект Customer и начальный баланс. Объекту Customer требуется объект Name и объект Date. Объект имени требует строк для фамилий и фамилий Мне нужно спросить у пользователя о деталях для создания объектов Name и Date, а также начального баланса.
Мне нужно создать новую учетную запись, получив соответствующую информацию от пользователя, то есть она попросит пользователя ввести имя пользователя, дату рождения и т. Д. Он читает ответы пользователя, создает учетную запись и добавляет ее в банк.
Я продолжаю получать сообщение об ошибке «java.lang.NullPointerException» при запуске метода public void createNewAccount(). Поблагодарили бы за любую помощь. Заранее спасибо.
Ниже приведен мой исходный код для класса Банка.
import java.util.ArrayList;
public class Bank
{
public static final double INTEREST_RATE = 0.012;//1.2%
// instance variables - replace the example below with your own
private ArrayList<Account> accounts;
private InputReader reader;
private Name fullName;
private Date dateOfBirth;
/**
* Constructor for objects of class Bank
*/
public Bank()
{
// initialise instance variables
}
/*
* Adds an existing Account to the bank
* @param account
*/
public void addAccount(Account account)
{
accounts.add(account);
}
public void createNewAccount() {
System.out.println("Please enter your first name: ");
String firstName = reader.readString();
System.out.println("Hello " + firstName + ". " + "What is your last name?");
String lastName = reader.readString();
System.out.println("Your last name is " + lastName);
System.out.println("Please enter your year of birth: ");
int thisYear = reader.readInt();
System.out.println("Please enter your month of birth: ");
int thisMonth = reader.readInt();
System.out.println("Please enter your date of birth: ");
int thisDay = reader.readInt();
Name theName = new Name(firstName, lastName);
Date theDateOfBirth = new Date(thisYear, thisMonth, thisDay);
}
}
'reader' используется перед инициализацией. Сначала запустите часть инициализации вашего кода. – 4J41