Ik heb volgende topic gelezen.
[rml]whoami in "[ /14] nette code release versie *FAQ Upd..."[/rml]
nl punt 8. Vermijd het gebruik van static..
Het helpt me een deel, ik begrijp dat statische variabelen, als ze statisch zijn, gebruik worden, door alle instanties die aangemaakt worden van deze klasse, gemeenschappelijk gebruikt worden, dus van die statische variabele is er ook maar één.
Maar wat is nu echt het verschil tussen de twee
bv
en
[rml]whoami in "[ /14] nette code release versie *FAQ Upd..."[/rml]
nl punt 8. Vermijd het gebruik van static..
Het helpt me een deel, ik begrijp dat statische variabelen, als ze statisch zijn, gebruik worden, door alle instanties die aangemaakt worden van deze klasse, gemeenschappelijk gebruikt worden, dus van die statische variabele is er ook maar één.
Maar wat is nu echt het verschil tussen de twee
bv
code:
1
2
3
4
5
6
7
| public class MyLogger{
private static Logger logger = Logger.getRootLogger();
public static void logThis(String message){
logger.info(message);
}
} |
en
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| public class MyLogger{
private static MyLogger instance = new MyLogger();
private Logger logger;
private MyLogger(){
logger = Logger.getRootLogger();
}
public static MyLogger getInstance(){
return instance;
}
public void logThis(String message){
logger.info(message);
}
} |