Извините, я просто пытался пройти прошлый экзаменационный вопрос в рамках подготовки к экзамену по Java и надеялся, что кто-нибудь скажет мне, является ли мое решение правильным.Вопрос:
Используя Java перечисления, реализуйте класс для расчета заработной платы.Константы в классе соответствуют обычным дням недели: понедельник, вторник ... пятница, дни выходных: суббота и воскресенье и праздничные дни, которые являются особым праздником недели.
Класс долженукажите метод экземпляра double pay ( double time, double payrate )
, который возвращает общую сумму заработной платы работника, работавшего в текущий день.Правила для расчета следующие:
Оплата за данный день, заданная как
base pay = pay rate * hours worked.
Здесь базовая заработная плата определяется как:
base pay = pay rate * hours worked
Сверхурочныеоплата за этот день определяется как
overtime pay = pay rate * overtime hours/2
Сверхурочные часы зависят от типа дня.
Обычный будний день: Для обычного рабочего дня сверхурочные часы - это часы, отработанные в этот деньпревышение 8 часов.
Выходные: в выходные дни сверхурочные часы - это часы, отработанные в этот день.
Выходные дни: в праздничные дни время сверхурочных в 1,5 раза большечасы работали в этот день.
Убедитесь, что ваш класс можно обслуживать.Должна быть возможность добавлять и удалять, не нарушая существующий код.Подсказка: реализуйте свой класс с помощью шаблона enum стратегии.
public class Payroll {
public enum Day {
MONDAY, TUESDAY, WEDNESDAY,THURSDAY, FRIDAY, SATURDAY, SUNDAY, BANK HOLIDAY;
}
public double pay( double time, double payrate ) {
if ( day
}
}
Я не могу понять, куда идти дальше, кто-нибудь сможет мне помочь с этим, пожалуйста?