|
0 / 0 / 0
Регистрация: 30.03.2014
Сообщений: 34
|
|||||||||||||||||||||
Описать банкомат с помощью классов и наследования15.06.2014, 18:53. Показов 3403. Ответов 11
Метки нет (Все метки)
Здравствуйте. Задание было такое. Описать банкомат с помощью классов и наследования. Сделал все, но сомнения по использованному наследованию. Как-то, кажется, все коряво сделал. Вот примеры:
Класс "Клиент"
0
|
|||||||||||||||||||||
| 15.06.2014, 18:53 | |
|
Ответы с готовыми решениями:
11
На основе указанных классов создать набор классов с использованием множественного наследования Банкомат с помощью массивов и циклов |
|
2152 / 1289 / 516
Регистрация: 04.03.2014
Сообщений: 4,092
|
||
| 15.06.2014, 19:05 | ||
|
Alexander886, зачем классу клиент метод проверки? проверку делает банкомат
Добавлено через 1 минуту ![]() зачем столько лишнего классу клиент ?. зачем наследовать класс меню , от класса клиент ?
0
|
||
|
0 / 0 / 0
Регистрация: 30.03.2014
Сообщений: 34
|
|
| 15.06.2014, 19:08 [ТС] | |
|
Да, методы определения фамилии, имя и отчества можно удалить. Проверка считывает введенный пинкод и сверяет его и пинкодом из текстового документа. Да и вообще класс Меню не нужен. Но нужно обязательно наследование. Вот в этом и проблема: что от чего должно наследоваться?
0
|
|
|
2152 / 1289 / 516
Регистрация: 04.03.2014
Сообщений: 4,092
|
||
| 15.06.2014, 19:25 | ||
|
а так нужно описать класс банкомат. банкомат возможно можно наследовать от "платежных терминалов". те в свою очередь еще от чегото... например от "аппаратно программные комплексы" и тд. Добавлено через 1 минуту это если чисто наследование применять . тут можно расширить задание путем других связей
0
|
||
|
0 / 0 / 0
Регистрация: 30.03.2014
Сообщений: 34
|
|
| 15.06.2014, 19:31 [ТС] | |
|
Моя вина, что немного не досказал. Нужно описать класса банкомат, который обеспечивает выполнения операций снятие денежных средств, перевод с банковского счета на карту, запрос баланса, историю операций. Я все описал. Но дело в наследовании? Чего наследовать то. Если рассмотреть банкомат, то я сделал так: водим пинкод и считываем его с текстового документы, сравнивает, сошлись запускаем меню. Выбираем операции и опять, баланс считываем из текстового документ, количество купюр в банкомате опять из текстового документа, историю операций записываем в текстовый документ. Перевод с банка на карту, сумма денег в банке опять в текстовом документе. Из написанного все работает. Но нужно наследование.
0
|
|
|
2152 / 1289 / 516
Регистрация: 04.03.2014
Сообщений: 4,092
|
||
| 15.06.2014, 19:45 | ||
|
Alexander886, вы не понимаете что такое наследование
если нужно описать такую работу банкомата , то тут нужно использовать агрегацию, ассоциацию, .. а наследование даже не знаю где тут применить, развечто как писал выше
0
|
||
|
48 / 48 / 22
Регистрация: 18.11.2013
Сообщений: 92
|
|
| 15.06.2014, 20:09 | |
|
если очень надо, можно сделать базовый класс ну допустим "операция банкомата", и от нее наследовать "снятие", "перевод" и т. д. и в классе банкомата обойтись вызовом метода базового класса какого нибудь Operation.Execute(param) что нибудь такое...но вообще то, имхо, это криво (но задание то надо как то выполнять
)
0
|
|
|
0 / 0 / 0
Регистрация: 30.03.2014
Сообщений: 34
|
|
| 15.06.2014, 20:16 [ТС] | |
|
Вот тоже была такая идея. Базовый класс - это класс банкомат. Можно в нем проверку пинкода выполнить. И считать сумму на счете. Затем сделать производные классы Перевод и Снятие. Наследуется "сумма", которая должна переопределяться в этих классах. А идею с текстовыми документами оставить? Вот еще наследовать можно количество купюр в банкомате и сумму, которую он может выдать. т.е. определять их в классе Банкомат. А интерфесы, думаю тут не к месту.
0
|
|
|
2152 / 1289 / 516
Регистрация: 04.03.2014
Сообщений: 4,092
|
|||
| 15.06.2014, 20:37 | |||
Сообщение было отмечено Alexander886 как решение
РешениеДобавлено через 14 минут создайте для начала класс банкомат , в нем поле - количество наличных денег, имя , адрес , банк к которому принадлежит. добавьте методы - снятия , перевода , проверки пин кода, etc создайте класс банк , поля - список банкоматов (коллекция) , имя . Создать ему какоето хранилище данных (счета, список клиентов) создать методы проверка баланса клиента , разрешение на выдачу наличных, выдача историю операций , добавить банкомат потом у класса банкомат создать события - запрос на выдачу наличных , запрос на историю , просмотр баланса . для всех этих событий при добавлении банкомата через банк , мы будет приписывать соответствующие обработчики (методы банка которые написаны выше). далее в аналогичном русле обеспечить взаимодействие между классом клиента и банкомата. это будет по ООП . но наследование где тут применять сложно придумать
1
|
|||
|
0 / 0 / 0
Регистрация: 30.03.2014
Сообщений: 34
|
|
| 15.06.2014, 20:40 [ТС] | |
|
Спасибо, завтра займусь этим. Сегодня уже поздно. Еще раз спасибо!
0
|
|
|
48 / 48 / 22
Регистрация: 18.11.2013
Сообщений: 92
|
|
| 15.06.2014, 20:46 | |
|
а если еще подумать, можно сделать класс "териминал" и в нем определить ввод/вывод, а уже на оснвании этого сделать класс "банкомат" с набором нужных операций...хотя тоже как то криво
0
|
|
|
|
|
| 16.06.2014, 13:48 | |
|
Вставлю свои "5 копеек": есть класс "Банковские операции (проводки)" (списали с одного счета, зачислили на другой счет), от него наследник - класс "Банкомат", который помимо функций родителя ("списал" -"зачислил") еще выполняет действие "проверил".
Но для меня вопрос вот в чем: что есть объект (т.е. что будет описывать класс)? Я бы сделала класс "Банкомат" (наследник от "проводок") и класс "Клиент", где описывается клиент со всеми данными. Дальше - их взаимодействие. Кстати, "Банкомат" может стать наследником "Клиента" (а что? Есть номер (чем не имя?), есть свой счет в банке (как и у клиента)). Да можно так много чего придумать - очень уж размытое задание, как по мне.
0
|
|
| 16.06.2014, 13:48 | |
|
Помогаю со студенческими работами здесь
12
Наследования классов и virtual Использование наследования классов Использование наследования классов Особенности наследования классов Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
||||
|
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга,
Ты же видел моря и метели.
Как сменялись короны и стяги,
Как эпохи стрелою летели.
- Этот мир — это крылья и горы,
Снег и пламя, любовь и тревоги,
И бескрайние. . .
|
PowerShell Snippets
iNNOKENTIY21 11.11.2025
Модуль PowerShell 5. 1+ : Snippets. psm1
У меня модуль расположен в пользовательской папке модулей, по умолчанию: \Documents\WindowsPowerShell\Modules\Snippets\
А в самом низу файла-профиля. . .
|
PowerShell и онлайн сервисы. Валюта (floatrates.com руб.)
iNNOKENTIY21 11.11.2025
PowerShell функция floatrates-rub
Примеры вызова:
# Указанная валюта 'EUR'
floatrates-rub -Code 'EUR'
# Список имеющихся кодов валют
floatrates-rub -Available
function floatrates-rub {
|
PowerShell и онлайн сервисы. Погода (RP5.ru)
iNNOKENTIY21 11.11.2025
PowerShell функция Get-WeatherRP5rss для получения погоды с сервиса RP5
Примеры вызова
Get-WeatherRP5rss
с указанием id 5484 — Москва (восток, Измайлово) и переносом строки:. . .
|
PowerShell и онлайн сервисы. Погода (wttr)
iNNOKENTIY21 11.11.2025
PowerShell Функция для получения погоды с сервиса wttr
Примеры вызова:
Погода в городе Омск с прогнозом на день, можно изменить прогноз на более дней, для этого надо поменять запрос:. . .
|
|
PowerShell и онлайн сервисы. Валюта (ЦБР)
iNNOKENTIY21 11.11.2025
# Получение курса валют
function cbr (] $Valutes = @('USD', 'EUR', 'CNY')) {
$url = 'https:/ / www. cbr-xml-daily. ru/ daily_json. js'
$data = Invoke-RestMethod -Uri $url
$esc = 27
. . .
|
И решил я переделать этот ноут в машину для распределенных вычислений
Programma_Boinc 09.11.2025
И решил я переделать этот ноут в машину для распределенных вычислений
Всем привет. А вот мой компьютер, переделанный из ноутбука.
Был у меня ноут асус 2011 года. Со временем корпус превратился. . .
|
Мысли в слух
kumehtar 07.11.2025
Заметил среди людей, что по-настоящему верная дружба бывает между теми, с кем нечего делить.
|
Новая зверюга
volvo 07.11.2025
Подарок на Хеллоуин, и теперь у нас кроме Tuxedo Cat есть еще и щенок далматинца:
Хочу еще Симбу взять, очень нравится. . .
|
Инференс ML моделей в Java: TensorFlow, DL4J и DJL
Javaican 05.11.2025
Python захватил мир машинного обучения - это факт. Но когда дело доходит до продакшена, ситуация не так однозначна. Помню проект в крупном банке три года назад: команда data science натренировала. . .
|