2016-02-17 1 views
2

Existe-t-il des normes Java stipulant qu'une classe privée de package doit avoir un package//au début du nom de la classe?Ajouter/* package */dans le package private class

/*package*/ class MyPackagePrivateClass { 
private var1; 
private var2; 
} 
+2

Je n'ai jamais vu un standard comme ça. Il est regrettable que Java ne nous ait pas permis de dire explicitement qu'une classe (ou une autre déclaration) est un paquetage privé. Chaque fois que je vois une révision de code avec ce genre de code, je dois demander s'ils ont par inadvertance omis 'public' ou' private'. Habituellement, c'est intentionnel, mais il n'y a aucun moyen de le savoir. Cependant, je n'ai jamais vu un standard de style qui aide à le distinguer (et mettre 'PackagePrivate' dans chaque nom est juste moche). – ajb

+0

@ElliottFrisch J'ai vu "paquet privé" utilisé beaucoup de fois, mais pas dans la norme Java offcial. La "visibilité par défaut" n'est tout simplement pas assez descriptive. – ajb

+0

J'ai vu du code comme ça vers 1997, j'en ai probablement écrit moi-même, mais c'est vraiment inutile. – EJP

Répondre

0

Normes officielles, no. Normes établies par une entreprise ou un projet particulier, peut-être. Le problème avec les normes qui nécessitent une certaine documentation (JavaDocs de côté) est qu'elles devront faire linter pour l'appliquer. Sinon, c'est une information plutôt inutile.

Cependant, il n'y a rien de "officiel" à propos de ce style de commentaire particulier. Comme d'autres l'ont mentionné dans les commentaires, le fait que l'absence de public ou private peut être délibérée ou accidentelle peut certainement inciter un groupe particulier à appliquer une telle norme.