Una subclase puede llamar a un constructor definido por su superclase usando la forma super(lista-de-parámetros);.
la lista de parámetros debe especificar los parámetros requeridos por el constructor de la superclase.
La primera declaración ejecutada dentro del constructor de una subclase siempre debe ser super(); (o super(lista-parámetros); si es necesario pasar parámetros).
La siguiente es una versión de TwoDShape con un constructor que inicializa el ancho y el alto.
La subclase Triangle usa super(w, h) para llamar al constructor de la superclase TwoDShape, pasando los valores de w y h.
El constructor de TwoDShape inicializa el ancho y el alto con estos valores.
La subclase Triángulo no necesita inicializar el ancho y el alto, solo el valor de estilo, que es exclusivo de ella.
El uso de super( ) permite a la superclase (TwoDShape) construir su propio subobjeto como se desee y agregar funcionalidad sin que la subclase necesite conocer los detalles.
Cada forma de constructor definida por la superclase se puede llamar con super(). El constructor ejecutado será aquel cuyos argumentos coincidan con los parámetros dados.
El siguiente ejemplo muestra versiones ampliadas de TwoDShape y Triangle con constructores predeterminados y constructores que toman un argumento.
Llamada al Constructor de Superclase: Cuando una subclase llama a super( ), está invocando al constructor de su superclase inmediata.
Referencia a la superclase inmediata: super() siempre hace referencia a la superclase inmediatamente superior a la clase que la llama, incluso en jerarquías de varios niveles.
Primera instrucción en el constructor: super() debe ser la primera instrucción ejecutada dentro del constructor de una subclase. Esto garantiza que la parte de superclase del objeto se inicialice antes de que el constructor de la subclase ejecute su propio código.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3