I'm familiar with simple class declaration public class test
but I don't understand public class test<T>
.
相关问题
- Delete Messages from a Topic in Apache Kafka
- Jackson Deserialization not calling deserialize on
- How to maintain order of key-value in DataFrame sa
- StackExchange API - Deserialize Date in JSON Respo
- Difference between Types.INTEGER and Types.NULL in
I assume that HTML ate your <T> (you need to write <T> to display it)
T is a type parameter or "generic" parameter. Say you have a List. Then it is for the structure of the list unimportant what exactly you are storing there. Could be Strings, Dates, Apples, SpaceShips, it doesn't matter for list operations like add, remove etc. So you keep it abstract when defining the class ("this is an abstract list"), but specify it when you instantiate it ("this is a list of Strings")
< T > refers to a generic type. Generic types are introduced in Java to provide you with compile time, and this is important due to type erasure, type-safety. It's especially useful in Collections because it frees you from manual casting.
It is a good idea to read more on generics, especially the documentation on the topic by Angelika Langer is very good: http://www.angelikalanger.com/GenericsFAQ/JavaGenericsFAQ.html
This is parametric polymorphism, another important form of polymorphism other than subtyping.
In Java land, they call it Generics (see also Lesson: Generics).
You are probably referring to Java Generics:
http://www.oracle.com/technetwork/java/javase/generics-tutorial-159168.pdf