• Source
    1. //Código de la clase Persona ejemplo aprenderaprogramar.com
    2. public class Persona {
    3.  
    4. private String nombre;
    5. private String apellidos;
    6. private int edad;
    7.  
    8. //Constructor
    9. public Persona (String nombre, String apellidos, int edad) {
    10. this.nombre = nombre;
    11. this.apellidos = apellidos;
    12. this.edad = edad;
    13. }
    14.  
    15. //Métodos
    16. public String getNombre () {
    17. return nombre;
    18. }
    19.  
    20. public String getApellidos () {
    21. return apellidos;
    22. }
    23.  
    24. public int getEdad () {
    25. return edad;
    26. }
    27. } //Cierre de la clase
    28.  
    29.  
    30. //Código de la clase profesor, subclase de la clase Persona ejemplo aprenderaprogramar.com
    31. public class Profesor extends Persona {
    32.  
    33. //Campos específicos de la subclase.
    34. private String IdProfesor;
    35.  
    36. //Constructor de la subclase: incluimos como parámetros al menos los del constructor de la superclase
    37. public Profesor (String nombre, String apellidos, int edad) {
    38. super(nombre, apellidos, edad);
    39. IdProfesor = "Unknown";
    40. } //Cierre del constructor
    41.  
    42.  
    43. //Métodos específicos de la subclase
    44. public void setIdProfesor (String IdProfesor) {
    45. this.IdProfesor = IdProfesor;
    46. }
    47. public String getIdProfesor () {
    48. return IdProfesor;
    49. }
    50.  
    51. public void mostrarNombreApellidosYCarnet() {
    52. // nombre = "Paco"; Si tratáramos de acceder directamente a un campo privado de la superclase, salta un error
    53. // Sí podemos acceder a variables de instancia a través de los métodos de acceso públicos de la superclase
    54. System.out.println ("Profesor de nombre: " + getNombre() + " " + getApellidos() +
    55. " con Id de profesor: " + getIdProfesor() );
    56. }
    57. } //Cierre de la clase
    58.