I am used to java generics, e.g.
class B {} class A { T t; T getT() { return t; } }
Now, what exactly is the mea