I have a class that extends the LinkedList class. Here\'s an excerpt of the code:
class SortedList extends LinkedList {
i
This is because you have <Integer> after SortedList.
Usually you use T for type parameters: class SortedList<T>, but you used Integer instead. That is, you made Integer a type parameter (which shadows the java.lang.Integer).
Your class, as it stands, is equivalent to
class SortedList<T> extends LinkedList<T> {
int intMethod(T integerObject){
return integerObject; // <-- "Cannot convert from T to int"
}
}
Remove the type parameter and it works just fine:
class SortedList extends LinkedList<Integer> {
int intMethod(Integer integerObject){
return integerObject;
}
}
The problem is that you've declared Integer as a generic type parameter for the SortedList class. So when you refer to Integer as a parameter of the intMethod method, that means the type parameter, not the java.lang.Integer type which I suspect you meant. I think you want:
class SortedList extends LinkedList<Integer> {
int intMethod(Integer integerObject){
return integerObject;
}
}
This way a SortedList is always a list of integers, which I suspect is what you were trying to achieve. If you did want to make SortedList a generic type, you would probably want:
class SortedList<T> extends LinkedList<T> {
int intMethod(Integer integerObject){
return integerObject;
}
}