cómo se logra la abstracción en java