java类的特点