Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите пожалуйста написать методы,java,

pyk Ученик (170), на голосовании 1 год назад
!!! У всех полей классов выставить модификатор доступа private
Реализовать исключение «PersonDead»
Наследовать класс от «Exception»
Реализовать класс «Person»
Поля класса - name:String, protection:Integer, health:Integer (+конструктор, +геттеры)
Все Люди имеют 50 здоровья и защиту 0
У класса Person должно быть два конструктора
- protected конструктор - все поля являются аргументами конструктора
- public конструктор - задается только имя, остальное значения по умолчанию
Метод - String announce() {} - возвращает строку в формате "Person /name/ имеет характеристики: /health/ здоровья и /protection/ защиты"
Метод - void takeDamage(Integer damage) {} - вычитает урон из здоровья персонажа по формуле health - (damage - protection)
Урон не может быть отрицательным (вызывать исключение Exception)
Здоровье не может стать отрицательным
Когда здоровье персонажа опускается до 0, выкидывается исключение PersonDead
Метод - Integer facePunch() - удар в лицо наносит один урон
Реализовать класс «Mage»
Наследовать класс от «Person»
Конструктор класса принимает только имя
Все Маги имеют 100 здоровья и защиту 15
Метод(Переопределить) announce - возвращает строку в формате Mage + вызов метода announce у родителя
Метод(Переопределить) takeDamage - вычитает урон из здоровья персонажа
по формуле health - (damage - protection - health % 10) (Случайный баф)
!!! Метод должен вызывать метод takeDamage super-класса
Метод - Integer fireBall() - фаербол наносит 45 урона
Реализовать класс «Archer»
Наследовать класс от «Person»
Конструктор класса принимает только имя
Все Лучники имеют 120 здоровья и защиту 12
Метод(Переопределить) announce - возвращает строку в формате Archer + вызов метода announce у родителя
Метод(Переопределить) takeDamage - вычитает урон из здоровья персонажа
по формуле health - (damage - protection + health % 10) (Случайный дебаф)
!!! Метод должен вызывать метод takeDamage super-класса
Метод - Integer shootBow() - стрельба из лука наносит 40 + health % 10 урона
*/
Голосование за лучший ответ
Александр Искусственный Интеллект (301687) 1 год назад
зачем это всё нужно?

какие-то сомнительные формулы

health - (damage - protection)

т.е. если damage было слабее чем protection, то это прибавит в здоровье?

зачем методу Integer facePunch() что-либо возвращать?
Похожие вопросы