Index du contenu
Como ejemplo, considere la jerarquía de clases ilustrada arriba. Una clase raíz genérica ha sido definido. Esta clase define un Medio de Transporte que tiene puertas, combustible (ambos con valores predeterminados) y un método, start_up(), que inicia el motor del transporte. También se han definido tres subclases de Medios de Transporte: Bote, Coche y Tanque. Dos de estas subclases son apropiadas, pero una probablemente no debería heredar de Transporte. Consideraremos cada uno a su vez para determinar su idoneidad. • La clase Tank anula el número de puertas heredadas, utiliza el start_up method dentro del movimiento de método y proporciona un nuevo atributo. por lo tanto coincide con nuestros tres criterios. • De manera similar, la clase Car anula el número de puertas y usa el método puesta en marcha(). También utiliza la variable de instancia combustible dentro de un nuevo método. acelerar(). También, por lo tanto, coincide con nuestros criterios. • La clase Dinghy define un nuevo atributo velas y un nuevo método zarpar_vela(). Como tal, no utiliza ninguna de las características heredadas de Transporte. Sin embargo, podríamos decir que ha extendido el Transporte por proporcionando este atributo y método. Entonces debemos considerar las características pro- proporcionado por Conveyance. Podemos preguntarnos si tienen sentido dentro el contexto de Dinghy. Si asumimos que un bote es un pequeño barco a vela, sin cabina y sin motor, entonces nada heredado de Conveyance es útil. En este caso, es probable que Transporte esté mal llamado, ya que define una especie de vehículo de motor, y la clase Dinghy no debería haberlo ampliado. 20.7 Métodos de anulación La anulación ocurre cuando se define un método en una clase (por ejemplo, Persona) y también en una de sus subclases (por ejemplo, Empleado). Significa que los casos de Tanto la persona como el empleado responden a las solicitudes de que se ejecute este método, pero cada uno tiene su propia implementación del método. 20.6 Propósito de las subclases 219
popular post
Temas de Pregrado en Ciencias de la Computación Guía avanzada a Python 3 Programación Juan caza
Lire plusTemas de Pregrado en Ciencias de la Computación Guía avanzada a Python 3 Programación Juan caza
Lire plus• https://docs.python.org/3/ El sitio principal de documentación de Python 3. Contiene tutoriales, referencias de bibliotecas, guías de configuración e instalación, así como Python cómo-tos • https://docs.
Lire plus