Je suis tombé sur une classe avec un constructeur privé mais l'objet est retourné par une autre méthode publique par appel au constructeur privé. Quel peut être l'avantage d'une telle construction alors que nous aurions pu rendre le constructeur public?Constructeur privé initialisé par une méthode publique
public final class TokenTable {
static public int errorToken = 0;
static public int timesToken = 1;
static public int divToken = 2;
static public int plusToken = 11;
......
......
private final HashMap<String, Integer> keywordMap = new HashMap();
private final HashMap<String, Integer> operationMap = new HashMap();
private TokenTable() {
operationMap.put("*", timesToken);
operationMap.put("/", divToken);
operationMap.put("+", plusToken);
....
}
static public TokenTable getInstance() {
LexTokenTabInstance = new TokenTable();
return LexTokenTabInstance;
}
}
Je dois dire, je suis un Peu déçu que la plupart des réponses ici soulèvent des singletons. Je suppose que c'est le nom de 'getInstance()' (qui est l'un des noms les plus communs pour un getter singleton) ... mais quand même. – cHao
@cHao Si vous n'êtes pas satisfait des réponses actuelles, pourquoi ne créez-vous pas les vôtres? Si vous pensez qu'il y a une meilleure réponse que celles fournies, je serais curieux de le lire. – Supericy
@Supericy: Parce qu'il y a deux bons ici qui disent déjà à peu près ce que je voudrais. Ce sont les autres qui me dépriment. – cHao