Как увеличить возраст, чтобы он обновлял значение по умолчанию в классе? Ява [закрыто]JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Как увеличить возраст, чтобы он обновлял значение по умолчанию в классе? Ява [закрыто]

Сообщение Anonymous »


РЕШИЛО

Возраст собаки может быть увеличен только на один год и не может быть уменьшен. В моем коде все еще есть ошибка, говорящая, что возраст не увеличивается. В программе регистрации маленьких собак это должно работать так: в меню будет опция «увеличить возраст собаки», при выборе которой запрашивается имя собаки, которое было сохранено ранее (сейчас это не имеет значения), там просто написано «вы обновили возраст собаки» без ввода пользователем, он просто добавляет 1 к текущему возрасту. Надеюсь, это объясняет лучше. Для выполнения задания мне нужно только пройти урок по собакам и пройти тесты, один из которых находится под кодом.

//вместо: общественный недействительный setAge (int newAge) { если (newAge > this.age) { this.age = новыйвозраст; } еще { System.out.println("Возраст не может уменьшаться. Сохранение текущего возраста."); } } //я попробовал это, и это решило ошибки теста: общественная недействительность увеличенияAgeByOne () { если (возраст < Integer.MAX_VALUE) { возраст++; } еще { System.out.println("Возраст не может быть увеличен из-за переполнения."); } } публичный класс Dog { частное имя строки; частная стринговая порода; частный возраст; частный вес; частный двойной хвостДлина; частный статический окончательный двойной TAIL_LENGTH_FOR_DACHSHUND = 3,7; public Dog (строковое имя, строка породы, int возраст, int вес) { это.имя = имя; this.breed = порода; this.age = возраст; this.weight = вес; this.tailLength = TailLength; нормальные буквы(); } публичная строка getName() { вернуть имя; } публичная строка getBreed() { возвратная порода; } общественный int getAge() { возвратный возраст; } общественный недействительный setAge (int newAge) { если (newAge > this.age) { this.age = новыйвозраст; } еще { System.out.println("Возраст не может уменьшаться. Сохранение текущего возраста."); } } ... } Я нашел другие решения, аналогичные тому, которое у меня уже есть, но ни одно из них не работает. Кроме того, когда я удаляю тот, который у меня уже есть, он показывает больше ошибок в тесте, а возраст не увеличивается.

Тест, проверяющий увеличение возраста:
@Test @Заказ(130) @DisplayName("Возраст можно обновить") общественная недействительностьableToIncreaseAge() { Собака Собака; собака = новая собака (DEFAULT_NAME, DEFAULT_BREED, DEFAULT_AGE, DEFAULT_WEIGHT); callAssumedMethodForIncreasingAgeOfDog (собака, 1); AssertEquals(DEFAULT_AGE + 1, Dog.getAge()); собака = новая собака (DEFAULT_NAME, DEFAULT_BREED, DEFAULT_AGE, DEFAULT_WEIGHT); callAssumedMethodForIncreasingAgeOfDog (собака, 3); AssertEquals(DEFAULT_AGE + 3, Dog.getAge()); } @Тест @Заказ(140) @DisplayName("Возраст не может уменьшиться") общественный недействительный способныйToDecreaseAge () { Собака Собака; собака = новая собака (DEFAULT_NAME, DEFAULT_BREED, DEFAULT_AGE, DEFAULT_WEIGHT); callAssumedMethodForIncreasingAgeOfDog (собака, -1); AssertEquals(DEFAULT_AGE, Dog.getAge()); } @Тест @Заказ(150) @DisplayName("Возраст не может уменьшиться за счет переполнения") общественный недействительный способныйToDecreaseAgeThroughOverflow () { Собака Собака; собака = новая собака (DEFAULT_NAME, DEFAULT_BREED, Integer.MAX_VALUE, DEFAULT_WEIGHT); callAssumedMethodForIncreasingAgeOfDog (собака, 1); AssertEquals(Integer.MAX_VALUE, Dog.getAge()); }
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»