atención es que no utiliza la palabra extends, entonces puede haber una herencia sin extends, si se fijan esto funciona bien.
realmente el código esta muy interesante, aparte me dijo el maesrtro que esta es la fuerza de programacion objetos, me gustaria saber la opinion de un experto, realmente a si se piensa en objetos o si esto es herencia,sin embargo esto funciona
Código Java:
Ver original
package ff.eje2; public class Sistema { { Asignatura asignatura1 = new Asignatura(10001, "Programacion 1"); Asignatura asignatura2 = new Asignatura(10002, "base de datos"); Asignatura asignatura3 = new Asignatura(10003, "tecnologia de sistemasd"); Alumno pedro = new Alumno(asignatura1, asignatura2, asignatura3); // Alumno miguel = new Alumno(asignatura1, asignatura2, asignatura3); Profesor jose = new Profesor(); jose.ponerCalificacion(pedro); // jose.ponerCalificacion(miguel); // System.out.println("Promedio de Miguel=" + jose.calcularMedia(miguel)); } }
Código Java:
Ver original
package ff.eje2; public class Asignatura { private int id; private double calificacion; { this.id = id; this.nombre = nombre; } public double getCalificacion() { return calificacion; } public int getId() { return id; } public void setId(int id) { this.id = id; } public void setCalificacion(double calificacion) { this.calificacion = calificacion; } }
Código Java:
Ver original
package ff.eje2; public class Alumno { private Asignatura asignatura1; private Asignatura asignatura2; private Asignatura asignatura3; public Alumno(Asignatura materia1, Asignatura materia2, Asignatura materia3) { this.asignatura1 = materia1; this.asignatura2 = materia2; this.asignatura3 = materia3; } public Asignatura getAsignatura1() { return asignatura1; } public Asignatura getAsignatura2() { return asignatura2; } public Asignatura getAsignatura3() { return asignatura3; } public void setAsignatura1(Asignatura asignatura1) { this.asignatura1 = asignatura1; } public void setAsignatura2(Asignatura asignatura2) { this.asignatura2 = asignatura2; } public void setAsignatura3(Asignatura asignatura3) { this.asignatura3 = asignatura3; }
Código Java:
Ver original
package ff.eje2; public class Profesor { public Profesor() { } public void ponerCalificacion(Alumno alumno) { alumno.getAsignatura1().setCalificacion(calificacion1); alumno.getAsignatura1().setCalificacion(calificacion2); alumno.getAsignatura1().setCalificacion(calificacion3); } public double calcularMedia(Alumno alumno) { double calificacion1 = alumno.getAsignatura1().getCalificacion(); double calificacion2 = alumno.getAsignatura1().getCalificacion(); double calificacion3 = alumno.getAsignatura1().getCalificacion(); return (calificacion1 + calificacion2 + calificacion3 )/3; } }