В каких строках использование параметра T не законно (укажите 3 варианта):

public class Test<T> {
    private T item;                                       // (1)
    private static T[] storage = new T[100];              // (2)
    public Test(T item) { this.item = item; }             // (3)
    public T getItem() { return item; }                   // (4)
    public void setItem(T newItem) { item = newItem; }    // (5)
    public static void getAllItems(T newItem) {           // (6)
        T temp;                                           // (7)
    }
}
Explanation
Любое использование типа-параметра в статическом контексте запрещено, т.е. тип-параметр не может быть использован как:
- тип статического поля (строка 2);
- тип значения, возвращаемого статическим методом;
- тип формального параметра статического метода (строка 6);
- тип локальной переменной в теле статического метода (строка 7);
- тип локальной переменной в блоке статической инициализации и т.п.
Кроме того, тип-параметр нельзя использовать в операторе new, даже при создании массивов (строка 2).

Слідкуй за CodeGalaxy

Мобільний додаток Beta

Get it on Google Play
Зворотній Зв’язок
Продовжуйте вивчати
тести з Java
Cosmo
Зареєструйся Зараз
або Підпишись на майбутні тести