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 }
Saludos
¿Sabes SQL? ¿No-SQL? Aprende MySQL, PostgreSQL, MongoDB, Redis y más con el Curso Profesional de Bases de Datos que empieza el martes, en vivo.
Por Zequi el 11 de Agosto de 2007
Por Javier el 11 de Agosto de 2007
Por Lunatic el 12 de Agosto de 2007
Precisamente buscaba algo similar, gracias
Por Wanaya_amigo_de_todo el 12 de Agosto de 2007
Por Señor Oz el 12 de Agosto de 2007
Por eveevans el 12 de Agosto de 2007
Por Wanaya el 12 de Agosto de 2007
la función
Código :
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 Otaku RzO el 13 de Agosto de 2007
En Actionscript 3 no habra algo parecido a la clase arguments de Actionscript 2 ??
Por Dano el 13 de Agosto de 2007
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.
saludos
Por Dano el 13 de Agosto de 2007
http://www.cristalab.com/foros/t43848.html
Por Otaku RzO el 13 de Agosto de 2007
Por Dr.C el 21 de Agosto de 2007
Por cathelper el 01 de Octubre de 2007
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 fe el 21 de Abril de 2008
nos vemos la proxima
[email protected]
Por Dano el 21 de Abril de 2008
felipao :
nos vemos la proxima
[email protected]
Sale we, cuidate!
Por Freddie el 22 de Abril de 2008
Dano :
felipao :
nos vemos la proxima
[email protected]
Sale we, cuidate!
Por katze el 22 de Abril de 2008