Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗jvSpGnCl 105 of 322 menu
◀ ▶

Обобщенный класс в Java

Параметр типа можно задать не только у метода, но и у класса. Имя в угловых скобках после имени класса участвует в типе полей и в типе самого объекта.

Коробка держит одно значение и отдает его через метод доступа:

class Box<T> { private final T item; Box(T item) { this.item = item; } T getItem() { return item; } } void demo() { Box<String> textBox = new Box<>("note"); Box<Integer> numBox = new Box<>(100); System.out.println(textBox.getItem()); System.out.println(numBox.getItem()); }

Тип Box<String> и Box<Integer> различается: из первой читают строку, из второй - число. Параметр T в конструкторе задает тип хранимого значения:

class Box<T> { private final T item; Box(T item) { this.item = item; } String describe() { return "holds " + item.getClass().getSimpleName(); } } void demo() { Box<List<Integer>> box = new Box<>(List.of(1, 2)); System.out.println(box.describe()); }

Сделайте класс с одним параметром типа и полем для хранимого значения. Создайте объект со строкой "kit" и выведите поле.

Добавьте метод, который принимает второе значение того же типа и возвращает список из текущего значения и аргумента. Для коробки с "a" и аргумента "b" выведите список.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить