#java
Предположим, у нас есть параметризованный класс public class Example{ ... } Что можно подставлять в качестве значения параметра X при использовании этого класса в программе? имя любого интерфейса (например, CharSequence) символ "?" или более сложное выражение с ключевыми словами extends и super значение X можно не указывать, т.е. использовать класс Example как обычный непараметризованный имя любого класса (например, Object) имя любого примитивного типа (например, int) ссылку на метод (например, Object::toString) имя любого перечисления (например, DayOfWeek) значение примитивного типа (например, 42) Объясните пожалуйста, почему не подходят ответы 1, 2, 3, 4 ?
Ответы
Ответ 1
Аргументы типов в Java определены в спецификации в п.п. 4.5.1. В качестве аргумента по спецификации можно поставить ссылочный тип (ReferenceType в Java любой непримитивный тип) либо маску (WildCard, т.е. выражение ? extends/super T). Вот пример допустимого использования Example: Examplea = new Example (); Example b = new Example
Комментариев нет:
Отправить комментарий