首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >返回类型中的Java边界通配符

返回类型中的Java边界通配符
EN

Stack Overflow用户
提问于 2012-01-23 10:01:35
回答 3查看 7.4K关注 0票数 18

我在很多地方都读到过,包括here,在方法返回类型中使用有界通配符不是一个好主意。然而,我找不到一种方法来避免它与我的类。我是不是遗漏了什么?

情况看起来像这样:

代码语言:javascript
复制
class EnglishReaderOfPublications {

    private final Publication<? extends English> publication;

    EnglishReaderOfPublications(Publication<? extends English> publication) {
        this.publication = publication;
    }

    void readPublication() {
        publication.omNomNom();
    }

    Publication<? extends English> getPublication() {
        return publication;
    }
}

总之,我希望这个类能够使用任何与英语不同的出版物。该类需要允许从外部访问发布,但理想情况下,getPublication的调用者不希望将结果作为有界通配符。他们会对Publication<English>感到满意的。

有什么办法可以解决这个问题吗?

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8966502

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档