Generics: Что значит такая запись? Что значит такая запись?ClassName
Как generic может принимать несколько входных типов, во что это развёртывается в коде? Приведите, пожалуйста, примеры кода.

21 Авг 2019 в 07:01
343 +1
0
Ответы
1

В записи ClassName<T, A, R> T, A и R представляют собой обобщенные параметры, которые могут быть любыми типами данных. Это означает, что при использовании экземпляра класса ClassName нужно указать конкретные типы для каждого из параметров T, A и R.

Пример кода:

public class ClassName<T, A, R> {
private T value1;
private A value2;
private R result;
public ClassName(T value1, A value2) {
this.value1 = value1;
this.value2 = value2;
}
public void process() {
// логика обработки значений value1 и value2
}
public R getResult() {
return result;
}
public void setResult(R result) {
this.result = result;
}
public static void main(String[] args) {
ClassName<Integer, String, Double> example = new ClassName<>(10, "Hello");
example.process();
Double result = example.getResult();
System.out.println(result);
}
}

В данном примере ClassName является обобщенным классом с тремя параметрами T, A и R. В конструкторе принимаются значения типов T и A, после чего выполняется некоторая логика обработки и запись результата типа R. В методе main создается экземпляр ClassName с указанием типов Integer, String и Double, затем выполняется обработка и получение результата.

20 Апр 2024 в 13:09
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир