GoConqr hat ein neues Design! Sag uns, wie es dir gefällt.

Mindmap

Unidad 3

Sara Ramírez Spanisch

Inhalt der Mindmap

Unidad 3

  1. Clases

    • Tipos de relación
      • Las relaciones existentes entre distintas clases nos indican como se comunican los objetos de estas clases entre si
        • existen relaciones como
          • de tipo asociativas
            • Conexiones entre clases, es una relación estructural que describe la conexión entre los objetos.
          • De dependencia
            • Es la más débil que una asociación
          • Herencia
            • Relación entre super clases y subclases, objetos de distintas clases pueden tener atributos similares y exhibir comportamientos parecidos
              • ejemplo
                • //Ejemplo de composición con la clase vehículo y motor //Declaración de la clase Motor class Motor{ public: Motor(); void setMotor(double, double); double getPotencia(); double getCilindraje(); void imprimir(); double torqueMotor(); private: double potencia; double cilindraje; }; //Definición de la clase Vehiculo class Vehiculo{ public: Vehiculo(double, Motor); void setPrecio(double); double getPrecio(); void imprimirVehiculo(); private: double precio; Motor VS1000; };
                  • Igualmente en programación orientada a objetos se presentan otros tipos de relaciones, por ejemplo la relación “usa un” se presenta cuando una función utiliza o recibe como parámetro un objeto de una clase, y a partir de sus datos obtiene algún resultado específico
    • Miembros Protefidos
      • La palabra clave protected especifica el acceso a los miembros de clase en member-list hasta el especificador de acceso siguiente (public o private) o el final de la definición de clase. Los miembros de clase declarados como protected solo los pueden utilizar los siguientes elementos:
        • Funciones miembro de la clase que declaró originalmente estos miembros. Objetos friend de la clase que declaró originalmente estos miembros. Clases derivadas con acceso público o protegido desde la clase que declaró originalmente estos miembros. Clases directas derivadas de forma privada que también tienen acceso privado a miembros protegidos
    • Declaración de clases derivadas
      • Esta se crea a partir de otra ya existente denominada clase base, esta y clase derivada tienen códigos y datos comúnes
        • ejemplo
          • //Declaración de la clase vector2D class Vector2D{ public: Vector2D(double=0, double=0); void setVector2D(double, double); double getx(); double gety(); void imprimir(); double magnitudVector2D(); protected: double x; double y; }; //Definición del constructor Vector2D Vector2D:: Vector2D (double l, double a){ x=l; y=a; } //Definición de la clase derivada Vector3D class Vector3D:public Vector2D { public: Vector3D (double=0, double=0, double=0); void setz(double); double getz(); void imprimirVector3D(); double magnitudVector3D (); private: double z; protected: }; //Definición del constructor Vector3D Vector3D:: Vector3D(double l, double a, double f) { x=l; //inicialización de los datos miembro protected heredados de Vector2D y=a; z=f; }
            • En el ejemplo se puede ver que, a través de la notación de herencia, la clase Vector3D hereda los datos y funciones de la clase Vector2D, sin necesidad de volver a definirlos. También es evidente que en el constructor de la clase Vector3D se inicializan los datos miembro heredados, x y y teniendo en cuenta que son declarados dentro del especificador protected. Aunque no hay una llamada explicita al constructor de la clase base Vector2D, el compilador efectúa este llamado implícitamente para inicializar los datos heredados, una vez se empieza a ejecutar el constructor de Vector3D.

Informationen

Beschreibung
Mindmap am Unidad 3, erstellt von Sara Ramírez am 28/04/2018.
Erstellt von
Sara Ramírez
Aufrufe
2
Bewertung

Mehr zu Relaciones entre clases y objetos

Feedback

Worum geht es?

Wie gefällt dir das neue Design?

Dein Eindruck