Установить обязательное поле для объекта - PullRequest
0 голосов
/ 09 октября 2018

Я работаю над своей системой владения питомцами и борюсь с проблемой.Чтобы добавить резидентный объект, мне нужно 5 полей: телефон, почтовый индекс, имя, день рождения и домашнее животное.Среди них, телефон, почтовый индекс и имя являются обязательными полями, а другие являются необязательными.Объект может быть построен только при наличии обязательных полей.

Как я могу это сделать, чтобы различать обязательные и необязательные поля?Я просто научил себя системе ООП.Действительно нужен намек.Любой ответ приветствуется!

Ответы [ 2 ]

0 голосов
/ 09 октября 2018

Это всего лишь пример того, как вы могли бы подойти к проблеме

public class Example{
String phone;
String postcode;
String name;
String birthday;
String pet;

public Example()
{
    birthday="N/A";
    pet="N/A";
}

public static void main(String[] args)
{
    //Ask phone number
    while(phone==null||phone=="")
    {
        //keep on asking
    }

    //Ask postcode
    while(postcode==null||postcode=="")
    {
        //keep on asking
    }

    //Ask name
    while(name==null||name="")
    {
        //keep on asking
    }

    //Ask birthday, and no need for checks
    //Ask pet, and no need for checks

}
}
0 голосов
/ 09 октября 2018

Лучший способ сделать это - проверить с помощью приглашения (пользовательский ввод) или проверки строки (ввод файла), если на входе есть правильные поля, необходимые для правильного создания вашего объекта (класса). После этого используйте конструктор, определенный программистом Документациядля этого в ссылке https://docs.oracle.com/javase/tutorial/java/javaOO/constructors.html

для создания экземпляра объекта, используя необходимые поля, и я бы использовал функции Set для необязательных входов.

Если входные данные не совпадают с необходимыми входными данными, вывести ошибкусообщение и не создавайте объект.

Я надеюсь, что это поможет с вашей проблемой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...