java explain code