Comme je n'ai l'intention que de surcharger les constructeurs pour une utilisation publique afin de créer les instances de classe, je voudrais rendre le constructeur principal privé. Est-ce possible à Scala?Puis-je rendre le constructeur principal privé tout en gardant public les constructeurs auxiliaires dans Scala?
20
A
Répondre
25
Oui, vous pouvez:
class A private (x: Int) {
def this() = this(42)
}
5
Oui - vous pouvez déterminer la visibilité du constructeur primaire en spécifiant les modificateurs après le nom de classe, par exemple: référence
class Foo private (a: Int, b: String) {
// ...
}
Et puis bien sûr les constructeurs auxiliaires peuvent encore (en fait, doit) cette constructeur primaire, tout en étant déclaré public.
Questions connexes
- 1. Problème avec les constructeurs auxiliaires dans Scala
- 2. Scala Constructeurs auxiliaires
- 3. Est-il possible d'hériter des constructeurs auxiliaires dans Scala?
- 4. inheritence privé et les constructeurs
- 5. Rendre le constructeur de classe privé
- 6. Scala: les constructeurs cari
- 7. Comment rendre le constructeur de classe privé dans Ruby?
- 8. Comment rendre un composant swing privé public en Java?
- 9. Le constructeur est privé?
- 10. Scala les variables finales dans le constructeur
- 11. Scala - factorisant les constructeurs
- 12. Accès public par défaut dans scala
- 13. Modifier les membres du public au privé
- 14. Problèmes avec les constructeurs Scala et énumérations
- 15. Constructeurs nommés dans Scala?
- 16. fakeiteasy initialisation dans le constructeur privé membres
- 17. Public/privé dans Ruby on Rails
- 18. redimensionner l'image tout en gardant le ratio
- 19. Constructeur privé pour DbContext
- 20. Classe scellée - Pourquoi supprimer le constructeur public?
- 21. field setter privé dans scala
- 22. appelez mon constructeur privé
- 23. Traiter un constructeur comme une fonction dans Scala - comment placer des constructeurs dans une carte?
- 24. Constructeur privé et constructeur de paramètres publics
- 25. Scala - méthode non reconnue dans le constructeur
- 26. Gestion des exceptions dans les constructeurs d'objets Scala
- 27. C++: héritage public \ privé prioritaire
- 28. javascript combinant public et privé window.onload
- 29. Déplacer le contenu principal Wordpress Constructeur
- 30. rediriger privé vers public domain dans apache
Vous pouvez également appeler le constructeur primaire privé de l'objet compagnon; utile pour les méthodes d'usine. – retronym
Ne fonctionne pas avec les classes de cas cependant. – Jus12