Quels modificateurs mettez-vous dans la classe StaticUtility? Je portais la finale sans aucun doute. Le code source récent a un résumé sans fin, donc je laisserai les détails et l'explication dans un mémorandum.
Dans le projet précédent, lors de la création de la classe StaticUtility, ajoutez le modificateur final. Je créais un constructeur privé pour qu'il ne soit pas instancié. (Chaque fois, en pensant que c'est ennuyeux)
//Ajouter le final aux modificateurs de classe pour empêcher l'héritage
public final class A {
//Créer une construction privée afin qu'elle ne soit pas instanciée
private A(){
}
public static String getHello() {
return "Hello";
}
}
Je l'ai découvert en lisant les classes Spring Framework, mais des personnes fortes récentes Il semblait que je créais un utilitaire statique avec un résumé. Spring Source
//Je l'ai fait abstrait et n'ai pas écrit le constructeur
public abstract class FreeMarkerTemplateUtils {
public static String processTemplateIntoString(Template template, Object model)
throws IOException, TemplateException {
StringWriter result = new StringWriter();
template.process(model, result);
return result.toString();
}
}
Les instances ne peuvent pas être créées pour les classes abstraites. Vous n'avez donc pas besoin de définir un constructeur privé Puisqu'il n'y a pas besoin de s'inquiéter de la création d'une instance, je suppose que cela réduira la quantité de codage.
N'est-il pas héréditaire si c'est abstaract? J'ai pensé, mais je ne peux pas le remplacer quand il est hérité, Surtout, compte tenu du temps et des efforts du constructeur privé, je pensais que l'abstarct était extrêmement avantageux. (En premier lieu, il y a des moments où j'oublie d'écrire un constructeur privé, donc ça empêche aussi ça!)
Imitons le code source de personnes de plus en plus fortes!
Recommended Posts