У меня есть абстрактный класс выглядит так:В Java, как правильно использовать абстрактные классы в параметрах метода?
public abstract class Mapper<T>{
public T getResult(String json){
...
}
}
T является классом объектов, строка JSON получает отображается в.
У меня есть несколько классов сопоставлений, которые расширяют этот абстрактный класс; все с разными значениями T. Я хочу, чтобы он мог подключить родительский класс Mapper к методу, который могут использовать все классы детей; поэтому мне не нужно писать отдельный метод для каждого дочернего класса. Мой ожидается метод выглядит следующим образом:
public handleResult(String 1, String 2, boolean 3, Mapper<T> map){
....
}
Это дает мне вопрос, что он не может разрешить T, и я попытался это так:
public handleResult(String 1, String 2, boolean 3, Mapper map){
....
}
Однако это вызывает нулевые проблемы с указателями, потому что он не может разрешить что T, как предполагается, будет дальше в код.
Может ли кто-нибудь указать мне, как я могу использовать этот абстрактный класс в методе?
Делая объявляя класс или метод общего, вы можете определить 'тип T' параметр, после чего вы можете использовать его –
Почему у вашего метода нет типа возврата? – SomeDude