Curinga Java delimitada no tipo de retorno

Eu li em vários lugares, incluindoaqu que ter um curinga limitado em um tipo de retorno de método é uma má ideia. No entanto, não consigo encontrar uma maneira de evitá-lo com a minha turma. Estou esquecendo de algo

A situação é mais ou menos assim:

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;
    }
}

Em resumo, uma classe que eu quero poderconsumi qualquer publicação que esteja em alguma variante do inglês. A turma precisa permitir o acesso à publicação de fora, mas, idealmente, os chamadores degetPublication não desejaria o resultado como um curinga limitado. Eles ficariam felizes comPublication<English>.

Existe uma maneira de contornar isso?

questionAnswers(6)

yourAnswerToTheQuestion