202 votes

Annotation Java SafeVarargs, existe-t-il une norme ou une meilleure pratique ?

Je suis récemment tombé sur la java @SafeVarargs annotation. En cherchant sur Google ce qui fait qu'une fonction variadique en Java n'est pas sûre, je suis resté plutôt perplexe (empoisonnement du tas ? types effacés ?), et j'aimerais donc savoir certaines choses :

  1. Qu'est-ce qui fait qu'une fonction variadique de Java n'est pas sûre dans la @SafeVarargs sens (de préférence expliqué sous la forme d'un exemple approfondi) ?

  2. Pourquoi cette annotation est-elle laissée à la discrétion du programmeur ? N'est-ce pas quelque chose que le compilateur devrait être capable de vérifier ?

  3. Existe-t-il une norme à laquelle il faut se conformer pour garantir que sa fonction est effectivement sûre pour les varags ? Si non, quelles sont les meilleures pratiques pour s'en assurer ?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X