La verdad es que puede parecer un poco lioso pero no lo es
Cuando usamos "import" podemos usar la/las Clase/s definidas en nuestro .as (así como los métodos de esas clases)
Cuando usamos "include" es "como si" escribiéramos el texto en nuestro .as (o en nuestra película)
Antes de que existieran Clases (bueno, siempre han estado ahí) y Packetes, era común tener una serie de funciones. Funciones que no pertenecían a ninguna Clase (cuando son de una clase las llamamos "métodos"). También se tenían "prototipos".
Vamos con un ejemplo simple:
ANTES era común tener en un .as algo como
Código ActionScript :
//una función
function bisiesto(anio){
return ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0);
}
//o un prototipo
Date.prototype.getDifference = function()
{
var difference, endDate, retObj, endTime;
endDate = new Date();
endDate.setHours(arguments[0])
endDate.setMinutes(arguments[1]);
endDate.setSeconds(arguments[2]);
endDate.setFullYear(arguments[3]);
endDate.setMonth(arguments[4]);
endDate.setDate(arguments[5]);
endTime = endDate.getTime();
retObj = new Object();
difference = endTime-this.getTime();
retObj.time = difference;
retObj.days = Math.round(difference/86400000);
retObj.hours = Math.floor((difference-(retObj.days*86400000))/(3600000))
retObj.minutes = Math.floor((difference-(retObj.days*86400000)
-(retObj.hours*3600000))/(60000))
retObj.seconds = Math.floor((difference-(retObj.days*86400000)
-(retObj.hours*3600000)
-(retObj.minutes*60000))/(1000))
return retObj;
}
usábamos entonces un bonito "include" para poder usar la función bisiesto o para saber la diferencia entre dos fechas.
Código ActionScript :
include "fichero.as"
//simplemente llamamos a la función
var es_bisiesto=bisiesto(2009)
trace("¿el 2009 es Bisiesto?"+es_bisiesto)
AHORA las cosas han cambiado y nos hacemos una Clase, estática o no, y creamos métodos
Código ActionScript :
package fechas{
public Class Utils {
public function Utils(){
}
public function bisiesto(anio:Number):Boolean{
return ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0);
}
}
}
y nuestro "as" se complica
Código ActionScript :
import fechas.Utils; //<--lo que hacemos es "importar"
//creamos una instancia de la Clase "Util"
var util:Util=new Util();
//usamos un método de la Clase "Util"
var es_bisiesto:Boolean=util.bisiesto(2009)
trace("¿el 2009 es Bisiesto?"+es_bisiesto)