Intereting Posts
Отправить приглашение через приложение Android для друзей facebook J-Query-Tap-hold не работает в эмуляторе мобильных виджета Opera Настройка настраиваемого шрифта внутри `ImageAdapter extends BaseAdapter` Почему GetServerAuthCodeResult устарел? Как я могу сделать что-то эквивалентное в установленном приложении? Получать изменения контакта (добавлено, удалено и изменено) Проблемы с Android findViewById Ионная ошибка с лицензией для Найти MAC-адрес устройства Bluetooth с помощью adb Получение старых намерений в onResume () после startActivity (newIntent) Android – отключить микрофон во время записи видео Android RealmList <Integer> и RealmList <String> Переходы общего элемента с фрагментами не работают с ViewPager Android Studio получает устаревшее предупреждение даже с помощью @SuppressWarnings («устаревание») Android / Java Regex для удаления дополнительных нулей из подстрок Отключить кластеризацию при максимальном уровне масштабирования с помощью android-maps-utils

Параметр метода должен быть obj определенного класса, который реализует определенный интерфейс

Как объявить метод с параметром, который должен быть в то же время определенным классом, который реализует определенный интерфейс без объявления для него специального класса?
Предположим, что я объявил класс ImageX, а также объявил интерфейс Tagging. Поэтому мне нужно создать другой класс или метод, который должен получать только экземпляры ImageX, которые реализуют интерфейс Tagging. Как объявить такой метод? что-то вроде

private void someMethod (ImageX<Tagging> obj){} 

Но это, конечно, неправильно. Да, я мог бы проверить obj, если он реализует необходимый интерфейс, но я хочу проверить параметры. И что, если это не какой-то метод, а конструктор …
Я могу спросить о дженериках?

Вы можете сделать метод общим и принимать объекты, которые являются как ImageX, так и Tagging, используя перекресток типа:

 private <T extends ImageX & Tagging> void someMethod (T obj){}