8
votes

Comment puis-je ajouter Javadoc à un initialiseur statique en Java?

J'ai refacturé une classe et déplacé du code du constructeur vers un initialiseur statique. Que dois-je faire avec le Javadoc qui était sur le constructeur? Est-il possible d'ajouter Javadoc à un initialiseur statique?


0 commentaires

4 Réponses :


8
votes

Javadoc est destiné principalement à documenter l'interface de la classe. Les commentaires javadoc doivent précéder une déclaration de classe, de terrain, de constructeur ou de méthode.

Un initialisateur statique ne fait pas partie de l'interface. Cela fait partie de la mise en œuvre de la classe.

Vous pouvez documenter son comportement dans la documentation de la classe, si désiré.


4 commentaires

L'initialisateur statique d'une classe pourrait avoir des effets secondaires qui valent la peine d'être documentés. Bien que cela soit argoutable si les initialisateurs statiques sont bonnes pratiques pour commencer.


Les méthodes privées et les champs font-elles partie de son interface?


@TTTTTPPP Ils sont privé et ne font donc pas partie de l'interface.


@Waldheinz c'est ce que je pensais



2
votes

Je dirais que les parties importantes de cette documentation devraient être déplacées dans la documentation de la classe:

/**
 * Your text here.
 */
public class SomeClass {
   static {
      /* your static initalizer */
   }
}


0 commentaires

8
votes

Tout d'abord, il est discutable si les initialisateurs statiques sont bonnes pratiques pour commencer.

Si vous décidez de les utiliser néanmoins, j'ajouterais la documentation à la Javadoc au niveau de la classe . Les initialisateurs statiques peuvent, en fonction de la manière dont ils sont mis en œuvre, provoquent des effets secondaires. Si vous utilisez des initialiseurs statiques avec des effets secondaires, le comportement doit être documenté pour le consommateur de ladite classe.


0 commentaires

2
votes

Il n'y a pas de constructeur statique en Java ( comme opose à C # ), c'est pourquoi vous devez documenter ce comportement au niveau de la classe.

En outre, étant donné que l'initialiseur statique initialisera probablement certains champs statiques, si ces champs sont publics, protégés (ou package-privé, en fonction de votre convention de visibilité Javadoc), vous ajouterez des détails sur la manière dont ces champs sont initialisés. Basé sur le comportement de l'initialisateur statique.


0 commentaires