Herencia Multinivel: Guía de Programación

Java soporta herencia multinivel, lo que significa que puede haber varias jerarquías de clases de varios niveles que incluyan capas de herencia. Sin embargo, en cada nivel, una clase es una subclase de otra superclase, excepto en el último nivel. A continuación, se muestra una representación gráfica de este concepto:
Índice
Ejemplos de Código:
Clase de estudiantes:
public class Estudiante { private int Rollno; private String Nombre; private String Dirección; public void storeDetails(int rno, String sname, String sadd) { Rollno = rno; Nombre = sname; Dirección = sadd; } public void showDetails() { System.out.println("Número de rollo: " + Rollno); System.out.println("Nombre: " + Nombre); System.out.println("Dirección: " + Dirección); } }
Clase de prueba de extensión de estudiantes:
public class EstudianteDePrueba extends Estudiante { protected int marcasSubjectl; protected int marcasSujeto2; protected int marcasSujeto3; protected int marcasSujeto4; public void storeMarks(int ml, int m2, int m3, int m4) { marcasSubjectl = ml; marcasSujeto2 = m2; marcasSujeto3 = m3; marcasSujeto4 = m4; } public void showMarks() { System.out.println("Asunto: " + marcasSubjectl); System.out.println("Marcas de Sujeto2: " + marcasSujeto2); System.out.println("Marcas de Sujeto3: " + marcasSujeto3); System.out.println("Marcas de Sujeto4: " + marcasSujeto4); } }
Clase de resultado de extensión de prueba:
public class ResultadoDePrueba extends EstudianteDePrueba { private int marcasTotales; private float porcentaje; private char calificación;
public void evaluarResultado() { marcasTotales = marcasSubjectl + marcasSujeto2 + marcasSujeto3 + marcasSujeto4; porcentaje = (marcasTotales * 100.00F / 600.00F); if (porcentaje == 50.00F) calificación = 'D'; else if (porcentaje >= 55.00F && porcentaje <= 60.00F) calificación = 'C'; else if (porcentaje >= 61.00F && porcentaje <= 70.00F) calificación = 'B'; else if (porcentaje >= 71.00F && porcentaje <= 75.00F) calificación = 'A'; else if (porcentaje >= 76.00F && porcentaje <= 85.00F) calificación = 'H'; else calificación = 'S'; }
public void showResult() { showDetails(); showMarks(); System.out.println("Puntuación total: " + marcasTotales); System.out.println("Porcentaje: " + porcentaje); System.out.println("Calificación: " + calificación); } } evaluarResultado(); Ob.mostrarResultado();
Producción
Si el diseñador no diseña la clase correctamente, o no usa la palabra clave adecuada, entonces hay pocos problemas en la herencia multinivel.
- ¿Cómo llamar al constructor parametrizado de superclase?
- Si la superclase y la subclase están protegidas o si los miembros de datos públicos tienen el mismo nombre, los miembros de datos de la superclase estarán ocultos. ¿Cómo distinguir o acceder a los miembros de datos de la superclase en la subclase?
- ¿Cómo llamar a un método miembro de la superclase si el método miembro de la subclase tiene la misma firma que el método miembro de la superclase?
La palabra clave Super es la solución a todos los problemas anteriores y se utiliza para referirse a su superclase inmediata. super tiene dos formas generales, como sigue:
- llamar al constructor de la superclase
- Accede a miembros ocultos de la superclase.
Si quieres conocer otros artículos parecidos a Herencia Multinivel: Guía de Programación puedes visitar la categoría Programación.
Entradas Relacionadas 👇👇