A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 杨新文 初级黑马   /  2012-9-15 21:12  /  1216 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 杨新文 于 2012-9-16 13:02 编辑

  1. <P>interface ConvertibleTo<T> {
  2. T convert();
  3. }</P>
  4. <P>class ReprChange <T extends ConvertibleTo<S>, S extends ConvertibleTo<T>>{
  5. T t;
  6. void set(S s){
  7.   t = s.convert();
  8. }
  9. S get(){
  10.   return t.convert();
  11. }
  12. }</P>
复制代码

评分

参与人数 1技术分 +1 收起 理由
admin + 1 新手鼓励

查看全部评分

3 个回复

倒序浏览

interface ConvertibleTo<T> //这里是定义接口 比较器 运用泛型
{
  T convert();    //比较的方法
}


class ReprChange <T extends ConvertibleTo<S>, S extends ConvertibleTo<T>> //运用了泛型定义要操作的引用数据类型
  {                          //T继承了接口,S继承了接口。让他们具有比较性
     T t;         //  T是数据类型。 t是T类型的参数。
      void set(S s)      //  S是数据类型。 s是S类型的参数

                    {
                         t = s.convert(); //  调用接口中的convert比较方法。一般会覆写该方法
                     }
        S get()
              {
                return t.convert();
               }
  }

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报

  1. interface ConvertibleTo<T> {//接口上加泛型,只有一个方法convert(),返回一个泛型类型的对象。
  2.         T convert();
  3. }

  4. //定义一个类,在这个类上加泛型,这个泛型类型是T,但T是ConvertibleTo<S>的子类,S是ConvertibleTo<T>的子类。
  5. //<T>,<S>和<T extends ConvertibleTo<S>, S extends ConvertibleTo<T>>都是泛型
  6. class ReprChange <T extends ConvertibleTo<S>, S extends ConvertibleTo<T>>{
  7.         T t;//定义类型T
  8.         void set(S s){//方法,接受一个参数S,把S转化为T类型
  9.                 t = s.convert();
  10.         }


  11.         S get(){//方法,把T转化为S返回。
  12.                 return t.convert();
  13.         }
  14. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
interface ConvertibleTo<T> 定义接口使用了泛型
T convert();   根据上边的泛型限定了方法的返回值类型
class ReprChange <T extends ConvertibleTo<S>, S extends ConvertibleTo<T>> 运用了泛型定义要操作的引用数据类型分别利用泛型丁一两个参数。利用泛型限定T要是ConvertibleTo<S>,的子类或相等,S是ConvertibleTo<T>的子类或相等
        T t;   T是数据类型。 t是T类型的参数         
void set(S s)      S是数据类型。 s是S类型的参数。

                 
   t = s.convert();   调用接口中的convert比较方法。一般会覆写该方法
                     
S get()返回值为S的get()方法
              
  return t.convert();
               
     

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马