Una pregunta Sobre OOP

Antonio Beamud Montero antonio.beamud en linkend.net
Mie Ago 30 21:04:03 CEST 2006


El mié, 30-08-2006 a las 17:14 +0200, Jesus Rodriguez escribió:
> Buenas, tengo una duda bastante extraña

> El problema está en que estoy leyendo un ejemplo de código de PyGTK, este
> hombre usa dos clases, y en una de las funciones de una clase, en su metodo
> __init__ creó una instancia de la otra clase, luego un metodo (de la misma
> clase) llamo a otro (tambien de la misma clase), supustamente este ultimo
> método deberia tener acceso a esa instancia, pero no sé por que paso esa
> variable como argumento en la llamada (si, lo se, suena lioso), os pongo un
> mini ejemplo:
> 
> 
> class A:
>     def __init__(self):
>         self.insB = B()
> 
> 
>     def imprValor(self, insB):
>         print insB.getValor()
> 
>     def blah(self):
>         self.imprValor(self.insB)
> 
> class B:
>     def getValor(self):
>         return 10
> 
> 
> insA = A()
> insA.blah()
> 
> 
> No sería esto una tonteria? (el hecho de que la funcion imprValor NO este
> usando directamente self.insB)

Depende de cuando y como se llame a esa función, imagina que tienes un
montón de objetos con el método getValor(), podría hacer llamadas de la
forma:

insA = A()
insA.imprValor(c)
insA.imprValor(v)
insA.imprValor(x)

> O sea, ¿Para qué puede servir llamar a una funcion enviandole una variable a
> la que supuestamente ya tiene accceso aun no teniendola de parametro?

Depende de lo que se quiera hacer :-)

> Aish, no se si me habeis entendido eejje. La verdad es que esto me lia por
> que estoy muy liado en eso de llamadas por valor y por referencia con
> lenguajes como C o C#.
> 
> Bueno gracias.
> _______________________________________________
> Python-es mailing list
> Python-es en aditel.org
> http://listas.aditel.org/listinfo/python-es

------------ próxima parte ------------
_______________________________________________
Python-es mailing list
Python-es en aditel.org
http://listas.aditel.org/listinfo/python-es


Más información sobre la lista de distribución Python-es