Practice of Java programming