|
1 / 1 / 0
Регистрация: 09.10.2019
Сообщений: 15
|
||||||
Реализация абстрактного метода без создания класса-наследника, как в JAVA10.10.2019, 17:40. Показов 5116. Ответов 11
Метки нет (Все метки)
В JAVA есть такая фича: реализация абстрактного метода при создании экземпляра.
0
|
||||||
| 10.10.2019, 17:40 | |
|
Ответы с готовыми решениями:
11
Как достучатся до полей и методов наследника абстрактного класса? Вызов переопределенного метода класса наследника из базового класса |
|
4694 / 2702 / 734
Регистрация: 02.08.2011
Сообщений: 7,228
|
|
| 10.10.2019, 17:49 | |
|
И зачем эта фича нужна?
Зачем для каждого отдельного экземпляра определять свой собственный метод? Просто определите метод, принимающий делегат и вызывайте этот делегат внутри. ps: реализация из коробки от java выглядит как "А *авно то с орехами!"
0
|
|
|
1 / 1 / 0
Регистрация: 09.10.2019
Сообщений: 15
|
||
| 10.10.2019, 18:04 [ТС] | ||
|
Определить делегат в данном случае не лучше создания наследников (у которых заведомо будет не больше одного объекта) . P.S. На счет А *авно то с орехами ": Спасибо. Я понял Ваше отношение и Ваше воспитание.
0
|
||
| 10.10.2019, 18:10 | |
|
0
|
|
|
1123 / 794 / 219
Регистрация: 15.08.2010
Сообщений: 2,185
|
||
| 10.10.2019, 18:12 | ||
|
0
|
||
|
4694 / 2702 / 734
Регистрация: 02.08.2011
Сообщений: 7,228
|
||||
| 10.10.2019, 18:21 | ||||
|
А не к его экземплярам. Вы же сами пишете: Даже логику можно передать параметром в виде делегата - C# это позволяет. А если java это не позволяет, то это проблема языка, его объективная реальность, а не проблема воспитания. Оттуда и орехи..
0
|
||||
|
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
|
|||
| 10.10.2019, 18:21 | |||
Сообщение было отмечено mikekon как решение
РешениеНо здесь это и не требуется, т.к. имеются делегаты — товарищ КОП выше пояснил как ими пользоваться.
1
|
|||
|
4694 / 2702 / 734
Регистрация: 02.08.2011
Сообщений: 7,228
|
|||||||
| 10.10.2019, 18:39 | |||||||
Добавлено через 57 секунд Отсюда и отторжение к java.
0
|
|||||||
|
1 / 1 / 0
Регистрация: 09.10.2019
Сообщений: 15
|
||
| 10.10.2019, 18:45 [ТС] | ||
|
Нет, значит нет. Появится в будущих версиях... Закрываю тему, а то сейчас будет религиозная война. Тут вон уже JS подтянулся
0
|
||
|
4694 / 2702 / 734
Регистрация: 02.08.2011
Сообщений: 7,228
|
||
| 10.10.2019, 18:52 | ||
|
Я сам начинал карьеру с java, но после 4 месяцев сознательно пересел. Объективно вещи, которые лучше: 1. Стройная иерархия типов 2. Крутая IDE 3. Хорошая документация 4. Динамичное развитие платформы Да, шарп спер идею у java, и ,переработав, сделал лучшую реализацию, имхо (деталей не знаю). По крайней мере, уже можно судить по созданной теме. И со стороны jvm, насколько я знаю, java уже не так популярен, есть kotlin..
0
|
||
|
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
|
|||||||||||||
| 10.10.2019, 18:58 | |||||||||||||
|
Там же нет делегатов, потому многое реализовано через интерфейсы — те же события, например. Если в шарпе в качестве обработчика можно запилить анонимный метод button.Click += (o, e) => { ... } или даже при наличии полноценного метода так: button.Click += OnClick;, то в джаве Click — это, грубо говоря, свойство интерфейсного типа interface ClickHandler { void handle(Object sender, EventArgs e); } (на деле — список ссылок на интерфейсы, конечно).Через это создатели джавы сжалились над пользователями и позволили создавать одноразовые реализации интерфейсов:
0
|
|||||||||||||
|
6496 / 3907 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
|
|||
| 10.10.2019, 20:09 | |||
|
0
|
|||
| 10.10.2019, 20:09 | |
|
Помогаю со студенческими работами здесь
12
Создание абстрактного класса и метода Реализация методов абстрактного класса Реализация абстрактного класса для арифметических операций
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога
SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
|
|
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
|
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога
SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
|
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога
Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip"
Извлеките архив и вы увидите. . .
|
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога
Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д.
Сборка примера
Скачайте. . .
|