Respondiendo a un post, salió un pequeño tip, que a mas de uno le puede ayudar.
La sobrecarga (OOP), en términos comunes, es poder tener en una clase, dos métodos que se llaman igual, pero tienen diferentes argumentos(ya sea en cantidad y/o Datatype).
La sobrecarga no se puede en actionscript, pero se puede pseudo implementar, jugando con el número de argumentos y el datatype de los mismos.
Vamos a demostrar una forma de ejecutarla, la sobrecarga se aplicará dependiendo el DataType del argumento(una de las formas mas comunes de uso). Aqui el ejemplo:
Código :
class TuClase { public function TuClase():void { } public function DoIt(obj:*):void { if( obj is ComboBox ){ DoCombo(obj); return ; } if( obj is DataGrid) { DoDataGrid(obj); return ; } //Enviamos un warning para avisar que no hay ningún método compatible trace("No existe ningún método compatible para los argumentos dados"); } public function DoCombo(obj:ComboBox):void public function DoDataGrid(obj:DataGrid):void }
bueno... mucho titulo.. pero poco contenido a mi humilde forma de ver. Saludos y Gracias. Por:Zequi_blog
Falta Esplicasion Por:Javier_blog
:O que buen tip! Precisamente buscaba algo similar, gracias Por:Lunatic_blog
y que hay con la sobrecarga de operadores? Por:Wanaya_amigo_de_todos_blo
¡¿QUEEEEEEEE?! oops, creo que aun soy un mega novato, a seguirle estudiando =( Por:Señor Oz_blog
mmm. muy buena dano , pero puedes ser un poco mas explicito.. Por:eveevans
para los que no lo entiendan es muy fácil.
la función
Código :
DoIt(obj:*)
recibe un objeto cualquiera, dependiendo de que objeto sea se ejecuta determinada función o acción. Eso ahorra mucho código. Una función que depende de sus argumentos ejecuta diferentes cosas, ¿genial no? Por:Wanaya
ya sea en cantidad y/o Datatype"
En el ejemplo que pones solo aplicas Datatype, pero nada con la cantidad de argumentos. En Actionscript 3 no habra algo parecido a la clase arguments de Actionscript 2 ?? Por:Otaku RzO
hola,
Agradezco sus comentarios, y entiendo que son términos algo complejos de entender, a mi me costo entenderlos. Pero creo que sería mejor agregar un tutorial de programación orientada a objetos. Yo si tengo un tiempo prometo hacerlo, o bien si algun valiente se ánima. La cuestión por la que no explique tan a detalle la sobrecarga fué por qué no quería saturar de información el tip, pero viendo que necesitamos reforzar algunas cuestiones de OOP, el fin de semana completaré el tip con un ejemplo practico.
ah, ok gracias, ahora se llaman statements. Por:Otaku RzO
a mí si me sirvio mucho esto , y veo k muchos tontos no entienden con una pekeña, pero muy bien hecha , explicación de la sobrecarga de métodos, k tontos , programen más , jajaja Por:Dr.Chunga
Para el numero de argumentos pueden hacer algo asi:
public function Doit(arg1:Number=0,arg2:MovieClip=null,arg3:Object=null) { // hacer algo con los parametros preguntando si son null o 0 if(arg1!=0) //hacer algo con arg1
if(arg2!=null) //hacer algo con arg2
if(arg3!=null) //hacer algo con arg3
}
Aca estan las llamadas: Doit(); Doit(4); Doit(4,miMovieClip); Doit(4,miMovieClip,elObjeto);
No he probado aun Doit(4,null,elObjeto);
pero creo que da error. Osea que tienen que poner sus parametros en orden de importancia (de izquierda a derecha). Por:cathelper_blog
que onda we ese comentario estubo de pelos jajajaj me ayudo un buen bueno cuidat. nos vemos la proxima alfa_eliz@hotmail.com