I learn this from "effective java". Best and easiest way:)