- interface ConvertibleTo<T> {//接口上加泛型,只有一个方法convert(),返回一个泛型类型的对象。
- T convert();
- }
- //定义一个类,在这个类上加泛型,这个泛型类型是T,但T是ConvertibleTo<S>的子类,S是ConvertibleTo<T>的子类。
- //<T>,<S>和<T extends ConvertibleTo<S>, S extends ConvertibleTo<T>>都是泛型
- class ReprChange <T extends ConvertibleTo<S>, S extends ConvertibleTo<T>>{
- T t;//定义类型T
- void set(S s){//方法,接受一个参数S,把S转化为T类型
- t = s.convert();
- }
- S get(){//方法,把T转化为S返回。
- return t.convert();
- }
- }
复制代码 |