|
36 / 3 / 0
Регистрация: 21.05.2018
Сообщений: 111
|
|||||||||||
Наследование. Как сделать код лучше21.06.2018, 21:19. Показов 1054. Ответов 13
Метки нет (Все метки)
Здравствуйте, уважаемые форумчане! Недавно изучаю java, и имею сейчас такую проблему. Задание следующее: сформировать штат сотрудников с параметрами загружаемыми из файла. Имеется базовый класс Employee, остальные наследуют от него. Также имеются интерфейсы, предоставляющие функционал расчета зарплаты. Вот, что я накропал:
0
|
|||||||||||
| 21.06.2018, 21:19 | |
|
Ответы с готовыми решениями:
13
Написал код, нужна критика и советы как можно было бы сделать лучше
break или как сделать лучше код |
|
Автоматизируй это!
|
||||
| 22.06.2018, 06:43 | ||||
|
Njula,
инкапсуляция где? как мне не влазя в код понять разницу между payment и getPayment, если все доступно?
1
|
||||
|
36 / 3 / 0
Регистрация: 21.05.2018
Сообщений: 111
|
||||||
| 23.06.2018, 00:21 [ТС] | ||||||
|
Спасибо! Я постарался код улучшить. Вот что получилось:
Добавлено через 2 минуты Насчет названия типа в "бриллиантике" - это intelijj сам добавляет, я знаю, что можно не писать.
0
|
||||||
|
Автоматизируй это!
|
|||||||
| 23.06.2018, 07:36 | |||||||
|
Njula,
Нажимаем в Идее Ctrl+Shift+Alt+S, выбираем вкладку проект, ставим джаву 8 всегда обращай внимание на все, что повторяется, например у тебя все методы toString почти одинаковы, так ты общую часть пропиши в родителе (Персонал) а в конкретных классах, только дописывай разницу, пример для менеджера
0
|
|||||||
|
Автоматизируй это!
|
||
| 23.06.2018, 07:40 | ||
|
Добавлено через 1 минуту строки со 115 по 162 должны превратиться в 1 короткий метод! это ж тот повтор кода с которым боремся
1
|
||
|
36 / 3 / 0
Регистрация: 21.05.2018
Сообщений: 111
|
||||||
| 23.06.2018, 14:33 [ТС] | ||||||
|
И снова спасибо за ваши ценные советы, Welemir1! Доработал код. Получилось вот что:
Что касается toString(), то этот метод я ввел просто для контроля создания списка объектов. В дальнейшем все работники будут сведены в таблицу. И конечно логичней было бы сразу прикрутить интерфейсы к базовому классу. Просто я следовал заданию на проект.
0
|
||||||
|
36 / 3 / 0
Регистрация: 21.05.2018
Сообщений: 111
|
|
| 23.06.2018, 18:45 [ТС] | |
|
С дублированием разобрался... Просто нужно было заполнение контейнера внести в область действия условия, в котором тип Node определяется.
0
|
|
|
Автоматизируй это!
|
|
| 23.06.2018, 19:01 | |
|
Njula, уже лучше, молодец, еще надо для работы с файлами использовать java.nio.Files а так для начинающего вполне. Еще конечно не очень хорошо все в одном файле, надеюсь у тебя какая то иерархия классов, раскиданная по файлам.
0
|
|
|
36 / 3 / 0
Регистрация: 21.05.2018
Сообщений: 111
|
|
| 23.06.2018, 23:57 [ТС] | |
|
Спасибо! Похвала программиста дорогого стоит). Я действительно начинающий. Это мой первый такого рода проект. Но с java я успел сродниться). Буду творить дальше. Насчет java.nio.Files я поищу инфу... По файлам раскидаю. Вот у меня такой вопрос. В задании говорится, что штат сотрудников со всеми данными должны быть сведены в таблицу. Я честно говоря не совсем понимаю, как это. В какую таблицу. Но сейчас занимаясь расчетом зарплаты сотрудников, понимаю, что остальные данные для расчета - отработанное время, коэффициент участия, кол-во подчиненных, должны вводиться динамически, естественно для каждого отдельно. Я пока определил ввод этих данных через консоль. Но занятие это довольно муторное - вводить для каждого цифры. Так вот, нет ли возможности привязать к коду файл таблицы, скажем эксель, чтобы данные сводились туда, и были пустые ячейки, при вводе недостающих данных в которые, производился расчет зарплаты? Я даже не представляю, как это можно реализовать... А вдруг?)
0
|
|
|
Автоматизируй это!
|
|
| 24.06.2018, 06:55 | |
|
Njula, можно то конечно все можно, но ты попробуй сначала с простым файлом для начала, эксельку тебе тянуть мне кажется излишняя сложность. Сведены в таблицу не знаю что имелось в виду.
0
|
|
|
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
|
|
| 24.06.2018, 07:02 | |
|
Njula, пора почитать пр БД...
0
|
|
|
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
|
|
| 24.06.2018, 08:29 | |
|
>>в таблицу. Я честно говоря не совсем понимаю, как это
Не понимаешь что такое таблица? >>скажем эксель А может прям в Экселе и считать зарплату и моск не насиловать? Если уж хочется насиловать моск прочитай что такое CSV например
0
|
|
|
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
|
|
| 24.06.2018, 08:55 | |
|
Njula, вместо того чтобы пытаться сделать код короче, подумай почему у тебя работники сами считают себе зарплату? Ты у себя на работе тоже сам себе зарплату считаешь? Захотел и накрутил себе мультипликатор х10 например да?
1
|
|
|
36 / 3 / 0
Регистрация: 21.05.2018
Сообщений: 111
|
|||||
| 24.06.2018, 14:11 [ТС] | |||||
|
Добавлено через 3 минуты Добавлено через 3 минуты Добавлено через 2 часа 10 минут
0
|
|||||
| 24.06.2018, 14:11 | |
|
Помогаю со студенческими работами здесь
14
Как упростить, сделать лучше этот код Jlist, Jpanel, JTextField: как сделать код лучше? Нужно изменить код, чтобы ПВГ завершалось на точке, которую задаёт пользователь, как лучше это сделать? Сделать код лучше Наследование,как сделать? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net
REST сервисы временно не работают, только через Web.
Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
|
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
|
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
|
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма).
На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
|
|
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ *
Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи
и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
|
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым.
Но восстановить их можно так.
Для этого понадобится консольная утилита. . .
|
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|