Hola
Bueno, pues piensa en que una función es una serie de instrucciones que repites constantemente para varias operaciones (suma, resta, etc) así podrias tener una función suma, otra función resta, y así sucesivamente, o puedes tener una función llamada operaciones y como parámetro de la función, indicas que tipo de calculo haras (suma, resta, etc) esto ya es a gusto de cada cual
Ahora bien, supongamos que tienes 3 proyectos diferentes, pero en todos ellos necesitas hacer operaciones, que harias para reusar código? tal vez copiar las funciones en los 3 proyectos, y digamos que esto sería una solución factible siempre y cuando no tengas que hacer cambios a las funciones, y a su vez hacer esos cambios en los 3 proyectos, tantas veces como cambios hagas!
solución? aquí es donde entran las clases, que no son otra cosa que una colección de funciones, y así pues puedes hacer uso de esta clase en tus 3 proyectos, y si tienes que hacer cambios en las funciones, haces los mismos, y los cambios ya quedan disponibles para los 3 proyectos sin tener el inconveniente de código descentralizado
ej:
tengo un fla con un campo de texto dinámico que tiene por nombre de instancia "test"
a este campo voy a asignarle el resultado de una suma, así pues si lo hiciera en una función
directamente en el fla tendría este código
Código actionscript:
Ver originalvar n:Number;
function suma(n1:Number, n2:Number):String{
n = n1 + n2;
return n.toString();
}
test.text = suma(1,2);
pero si lo hiciera con clase, podría hacerse en un archivo externo (en mi caso operaciones.as) y el cual
debe estar accesible para el fla (en este ej lo dejare al mismo nivel o carpeta)
en ese operaciones.as tendremos este código
Código actionscript:
Ver originalpackage {
import flash.display.MovieClip;
public class operaciones extends MovieClip {
var n:Number;
public function operaciones() {
// constructor code
}
public function suma(n1:Number, n2:Number):String{
n = n1 + n2;
return n.toString();
}
}
}
y para hacer uso del mismo, podremos hacerlo de 2 modos
modo 1
agregar esto al timeline principal
Código actionscript:
Ver originalimport operaciones;
var cal:operaciones = new operaciones();
test.text = cal.suma(1,2);
modo 2
ubicarnos en el escenario, e ir al panel de propiedades
allí veremos un campo Class y allí pondremos operaciones
y agregaremos solo esta línea en el timeline principal
que tal ? si te queda algo más claro o todavía tienes dudas? bueno, pues cualquier cosa por aca estamos
saludos