Я изучаю Java-дженерики, и я пытался написать очень простой код, который должен печатать тип параметра, в моем случае только для демонстрации, я пробую только тип String, все было нормально, пока я не напечатал класс типа, но для строкового типа, когда я использовал .length (), чтобы получить длину моей строки, он показал ошибку:
не может найти символ
System.out.println (obj1.length ()); // не работает
, поскольку класс class java.lang.String , почему мы не можем использовать .length () в обобщениях?
import java.util.*;
import java.lang.*;
public class GenericMethodTest {
public static < E > void sumOfGenericValues(E obj1, E obj2) {
System.out.println(obj1.getClass());
System.out.println(obj1.length()); //dosen't work
}
public static void main(String args[]) {
String fn = "JK", ln = "Rowling";
sumOfGenericValues(fn, ln);
}
}