|
1 / 1 / 0
Регистрация: 01.02.2021
Сообщений: 39
|
|
Аннотации07.05.2021, 01:39. Показов 864. Ответов 8
Метки нет (Все метки)
Подскажите, пожалуйста, а как использовать свои анотации для енам? Мне надо, чтобы в енаме у меня лежали константы с названиями консольных команд для чтения книги. Эти команды что-то умеют делать, а в консоль надо вызывать только помеченные аннотациями методы. Я вот не могу в едино все собрать.
В идеале, когда я ввожу к консоль команду, например, read(она помечена аннотацией) и выводит название команды и кол-во в int прочтенных страниц при это генерируется случайным образом кол-во страниц. Или например команда remove (также помечена аннотацией) и выводит название командв и кол-во int удаленных страниц и тоже генерируется рандомно. Не могу понять, каким образом мне создавать енам с методами исходя из названий и потом его использовать с аннотациями. енам приблизительно такой и все эти константы должны работать примерно одинаково, название команды и кол-во страниц рандомно READ, REMOVE, HIGHLIGHT_TEXT, CUT_TEXT, TEAR_OUT_THE_PAGES;
0
|
|
| 07.05.2021, 01:39 | |
|
Ответы с готовыми решениями:
8
Аннотации в Java |
|
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
|
|
| 07.05.2021, 02:45 | |
|
Какой-то сумбур. Давай ты свою кашу в порядок приведешь и как-то более структурированно опишешь, что требуется сделать.
1
|
|
|
1 / 1 / 0
Регистрация: 01.02.2021
Сообщений: 39
|
|
| 07.05.2021, 16:57 [ТС] | |
|
xoraxax, ок
если попытаться собрать кашу, то необходимо с помощью аннотации выводить в консоль только те методы, которые ей помечены. Например вводишь общее кол-во страниц и тебе рандомно выводится кол-во задействованных страниц и возможные команды. ввод Введите название книги и кол-во страниц в ней: Sapiens: A Brief History of Humankind 520 вывод: Title of the book - "Sapiens: A Brief History of Humankind", Number of used pages - 334, Comand - remove successfully! Title of the book - "Sapiens: A Brief History of Humankind", Number of used pages - 190, Comand - read successfully! Title of the book - "Sapiens: A Brief History of Humankind", Number of used pages - 0, Comand - Cut text failure Т.е. суть в том, чтобы один раз вызвать функцию-ввести данные и получить все возможные методы (помеченные своей аннотацией) Я предполагаю делать команды в енам, но не могу понять как это нормально соединить, чтобы в консоле был такой вывод, как в примере выше.
0
|
|
|
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
|
|
| 07.05.2021, 18:45 | |
|
причем тут вообще аннотации?
0
|
|
|
1 / 1 / 0
Регистрация: 01.02.2021
Сообщений: 39
|
|
| 07.05.2021, 19:42 [ТС] | |
|
xoraxax, задание такое, использовать свои аннотации для методов и запускать только помеченные методы)
0
|
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 07.05.2021, 23:19 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Похоже я понял это задание, но это ну ни разу не для начинающих.
Дисклеймер: все, что дальше -- моя личная интерпретация задания с упрощениями для наглядности (ну и потому что вечер и я торопился). Потребуется мелкая доп зависимость в виде reflections Итак, команды. Ну тут тривиально: все через соответствующий шаблон проектирования и Executor для исполнения команд относительно книги. По условию, для каждой книги через аннотацию должно быть определено, какие команды для нее допустимы. Плюс, надо использовать перечисление для сего. Делаем следующую систему: 1) Перечисление для команд
Затем, когда мы хотим исполнить команду в методе applyCommand, мы смотрим есть ли такая в списке разрешенных для книги и пытаемся найти такую в мапе. Если для нее есть реализация, то она будет исполнена, а если нет, то будет исполнен соотвествующий дефолт. Простой мейн:
Блин, движок форума вставил звездочек на книгу... В общем книга -- Моби Дик. Кто будет копировать код -- вот четыре звездочки это Дик.
2
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
1 / 1 / 0
Регистрация: 01.02.2021
Сообщений: 39
|
|
| 07.05.2021, 23:38 [ТС] | |
|
HighPredator, ого!! это ты в торопях накидал?) мне бы так!!) возможно, не для совсем начинающих, но эта тема затронулась и для закрепления, понимания дали задание. Спасибо большое, я постараюсь вникнуть в это решение и разобраться!
0
|
|
|
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
|
|
| 07.05.2021, 23:48 | |
|
0
|
|
| 08.05.2021, 10:52 | |
|
0
|
|
| 08.05.2021, 10:52 | |
|
Помогаю со студенческими работами здесь
9
Конфигурирование и аннотации Аннотации JPA Аннотации и getAnnotation Аннотации, .class
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Инструменты 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 и т. д.
Сборка примера
Скачайте. . .
|
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|