ref doc
- http://howtodoinjava.com/ - how to do in java. A very good guy who share lots of his experience
- http://www.mkyong.com/ - Another site which you can find java dev experience
- http://www.careercup.com/ - career cup. A site you can find interview questions.
Singleton
- http://www.infoq.com/cn/articles/double-checked-locking-with-delay-initialization - singleton double check locking and lazy initialize
- http://en.wikipedia.org/wiki/Singleton_pattern#Lazy_initialization
static synchronized method
- difference between static synchronized method and non-static synchronized method
- The lock objects are difference between static synchronized method and non-static synchronized method. Static synchronized method lock object is class object (lock object: FooClass.class), non-static synchronized lock object is instance object (lock object: this).
public class Foo {
public static synchronized void methodA() {}
public synchronized void methodB() {}
}
It's roughly equals
public class Foo {
public static void methodA() {
synchronized(Foo.class) {
...
}
}
public void methodB() {
synchronized(this){
}
}
}
HashMap
- http://howtodoinjava.com/2012/10/09/how-hashmap-works-in-java/ - how HashMap work in java