美文网首页干货
java泛型温习

java泛型温习

作者: UncleRiver | 来源:发表于2014-05-03 23:02 被阅读50次

    今天遇到有人向我问一道题目,其中一个要求是,从一个数组中取出元素并还原成其原来的类型——这个数组中的元素以抽象类保存:

    pubic class Business{

        ArrayList<BookAbs> list;

    }

    题目提示,BookAbs中可以设置一个标志来表示当前类的类型。

    我说,这样的话,这个标志可以直接是当前类的类型,这样就可以直接根据这个标志进行类型转换了。可惜对方初学者,一时半会没办法讲明白……

    大概可以这样写?:

    //这段代码可能有错,明天去公司看看其他类似的方法是怎么实现的

    public T extends BookAbs getBook(BookAbs bookAbs, Class T){

        return (T) bookAbs;

    }

    不知道怎么写对不对。

    另外,就算可以返回BookAbs 的子类类型实例, 也没有什么实际意义,因为还是只能调用父类定义的方法,

    BookAbs result = business.getBook(book, book.class);

    再不然,要调用子类的方法,就是另一个深度的问题了。

    哎,新装了系统之后还没有装eclipse呢……

    相关文章

      网友评论

        本文标题:java泛型温习

        本文链接:https://www.haomeiwen.com/subject/cnjrtttx.html