Algoritmos y Estructuras de datos

Clases de Objetos

Objetos

  • Los objetos son/representan cosas
  • Los objetos pueden ser simples o complejos
  • Los objetos pueden ser reales o imaginarios

 

Atributos

  • Valores o características de los objetos
  • Permiten definir el estado del objeto u otras cualidades


Ejemplo del Auto:

Velocidad
Aceleración
Cantidad de combustible
Marca
Color
Potencia
Velocidad máxima
Tipo de Combustible

 

Métodos (u operaciones)

  • Son las acciones que puede realizar un objeto
  • Los métodos pueden devolver un valor al acabar su
    ejecución

Ejemplo del auto

  • Arrancar motor
  • Parar motor
  • Acelerar
  • Frenar
  • Girar a la derecha (grados)
  • Girar a la izquierda (grados)
  • Cambiar marcha (nueva marcha)
 

Clases

  • Representan un tipo particular de objetos
    • Objetos con características y comportamiento similar
    • Categorías de objetos
  • Cada clase tiene asociado un código (definición de la clase), que determina:
    • Los atributos que tienen los objetos de la clase
    • Los métodos que pueden ejecutar los objetos de la c
      lase y cómo lo hacen
  • Programar orientado a objetos consiste en escribir código de clases de objetos
 

Ejemplo de definición de Clase Auto

CLASE Auto:
    marca
    vel_max = 500
    potencia
    tipo_combustible
    cant_combustible = 0

    METODO arrancar():
        # Código para que arranque el auto
    FINMETODO

    METODO obtener_cant_combustible():
        RETORNAR cant_combustible
    FINMETODO
FINCLASE 

 

Ejemplo de creación y manipulación de un objeto de la clase AUTO

miAuto = Auto()           # Creación
miAuto.marca = "Ferrari"  # Asignación de atributo
miAuto.potencia = 1000    # Asignación de otro atributo

miAuto.arrancar()         # Llamando a un método

velocidad_maxima = miAuto.vel_max  # obtención de un atributo

SALIDA <-- miAuto.obtener_cant_combustible()  # obtención de un valor
                                              # generado por un método 

 

Método específico de creación

CLASE Auto:
    marca
    vel_max = 500
    potencia
    tipo_combustible
    cant_combustible = 0

    METODO __inicializar__(marca, vel_max, potencia, tipo_combustible, cant_combustible):
        propia.marca = marca
        propia.vel_max = vel_max
        propia.potencia = potencia
        propia.tipo_combustible = tipo_combustible
        propia.cant_combustible = cant_combustible
    FINMETODO

FINCLASE 

 

Herencia

Una Clase puede "heredar" atributos y métodos de otra clase

Por ej: un auto puede ser un subgrupo de la clase "Transporte"

 

Ejemplo de herencia


CLASE Vehiculo():
    vel_max
    potencia
    tipo_combustible

    METODO arrancar():
        # Código para que arranque del vehículo
    FINMETODO
FINCLASE

CLASE Auto(Vehiculo):
    marca

    METODO arrancar():
        # Código específico para que arranque el auto
    FINMETODO
FINCLASE 


1

Ejercicios

Cree una clase matemática para realizar las operaciones de suma, resta, división y multiplicación. Llame a esas 4 operaciones desde su algoritmo principal

Diseñe una clase para trabajar con círculos. En su programa principal cree un círculo, asígnele un radio de 12, y obtenga su diámetro y su superficie

 

Documentación complementaria

http://www.nebrija.es/~abustind/Informatica/MetodologiaII/Introduccion.pdf

http://es.wikipedia.org/wiki/Clase_%28inform%C3%A1tica%29

http://es.wikipedia.org/wiki/Objeto_%28programaci%C3%B3n%29

https://www.fdi.ucm.es/profesor/jpavon/poo/1.1.Objetos%20y%20Clases.pdf

 

Algoritmos y Estructuras de Datos - Clases de Objetos

By Guillermo Nuñez

Algoritmos y Estructuras de Datos - Clases de Objetos

  • 2,345