Encapsulacion en Python

CN Camilo Nova Camilo Nova

Camilo Nova

CEO
1 min read.

Seguimos estudiando el lenguaje y ahora introducimos la encapsulacion con el mismo ejemplo de las clases:



#!/usr/bin/env python

# Encapsulacion en python
class Automotor(object) :
    """Clase de la cual heredan las demas y que es del nuevo estilo en python"""
    
    def __init__(self, ensambladora, nombre) :
        self.setEnsambladora(ensambladora)
        self.setNombre(nombre)
        print "Automotor", nombre, "Creado!!!"
        
    def setEnsambladora(self, ensambladora) :
        """Determina la ensambladora"""
        self.__ensambladora = ensambladora
        
    def getEnsambladora(self) :
        """Retorna la ensambladora"""
        return self.__ensambladora
        
    def setNombre(self, nombre) :
        """Determina el nombre del automotor"""
        self.__nombre = nombre
        
    def getNombre(self) :
        """Retorna el nombre del automotor"""
        return self.__nombre
        
    #Determinamos que el unico acceso a las variables es por los metodos
    ensambladora = property(getEnsambladora, setEnsambladora)
    nombre = property(getNombre, setNombre)
    
    
class Carro(Automotor) :
    """Esta clase hereda de Automotor y sus metodos"""
    pass
    
class Motocicleta(Automotor) :
    """Esta clase hereda de Automotor y sus metodos, pero es diferente a Carro"""
    pass
    
if __name__ == '__main__':
    carro = Carro("Toyota", "Celica")
    moto = Motocicleta("Auteco", "Pulsar")
    
    print "\n\n"
    print "El carro es", carro.getNombre()
    print "La moto es", moto.getNombre()

Written by Camilo Nova

CN Camilo Nova Camilo Nova

As the Axiacore CEO, Camilo writes about the intersection of technology, design, and business. With a strategic mindset and a deep understanding of the industry, he is dedicated to helping companies grow.

Newsletter

Subscribe to our newsletter:

Read more

Herencia en Python

Codigo que muestra el manejo de la herencia en python. Aun me pregunto porque permiten herencia multiple???#!/usr/bin/env pyt...

1 min read.

Clases en Python

Ejemplo del manejo de clases en python:#!/usr/bin/env python#Primera clase en pythonclass Empresa : """Clase Empresa, que ...

1 min read.

Funciones en Python

Este es un ejemplo de manejo de funciones en python:#!/usr/bin/env python# La funcion debe declararse antes de ser llamada, e...

1 min read.

Build Once. Own Forever.