10
votes

Comment définir une interface lancer un type d'exception générique?

Je veux définir une interface, comme xxx

pendant la mise en œuvre, SelfdefineFeXception varie. (AutoDefineFineXception comme générique indéfini pour l'instant) Y a-t-il un moyen de faire cela?

merci


1 commentaires

Vous pourriez avoir votre interface être définie pour lancer une exception qui est la superclasse de toutes les autodiffinefinesExceptions.


4 Réponses :


-4
votes

Si je comprends la question, vous pouvez lancer xxx

comme c'est la classe mère.


0 commentaires

6
votes

VOTRE PARAMETRE GÉNÉRICAIÉ DOIT ÉTABLER JETABLE. Quelque chose comme ceci: xxx


2 commentaires

C'est une sorte de honte que E ne peut pas être un ensemble de types d'exception.


En effet, ce serait un paramètre de type variable, qui ne semble toujours pas être pris en charge.



15
votes

Il vous suffit de contraindre le type d'exception pour être approprié pour être jeté. Par exemple: xxx

ou peut-être: xxx


3 commentaires

Mais vous voudrez utiliser une convention de dénomination conventionnelle, non?


@ Tomhawtin-Tackline: Oui, bien que la convention en Java pour les paramètres de type de dénomination ne soit pas aussi claire qu'en .net ...


@Jonskeet Je pense qu'il est assez clair: lettre majuscule unique ( Docs. oracle.com/javase/tadorial/java/generics/types.html ) mais ce n'est pas vraiment satisfaisant, nous ne voulons donc pas les suivre :-)



1
votes

Vous pouvez faire quelque chose comme xxx

et ensuite, par exemple xxx

bien sûr, lorsque vous instaniez la classe que vous devez Déclarez l'exception qui est lancée.

EDIT: Bien sûr, remplacez lancé avec l'une de vos exceptions auto-définies qui étendront lancé , Exception ou similaire.


0 commentaires