2011-12-03 53 views
5

Lo que deben utilizarse mientras se declara una variable de la siguiente manera:Diferencia entre objeto y *?

private var someVar:*; 

O

private var someVar:Object; 

¿Cuál es la diferencia entre los dos? ¿Qué hace que uno sea superior a otro en diversas situaciones? ¿Algún ejemplo?

Gracias.

Respuesta

10

someVar:* es una var sin tipo especial que mantiene el valor predeterminado valor predeterminado undefined mientras

Object var es null.

Esa es la única diferencia clave.

9

Desde el Adobe Documentation,

private var someVar:*; 
private var someVar:Object; 

En las versiones anteriores de ActionScript, una variable con ningún tipo anotación fue asignado de forma automática el tipo de datos de objeto. No es más verdadero en ActionScript 3.0, que ahora incluye la idea de una variable verdaderamente sin tipo . Las variables sin anotación de tipo ahora son consideradas sin tipo. Si prefiere dejar en claro a los lectores de su código que su intención es dejar una variable sin tipo, puede usar el nuevo símbolo de asterisco (*) para la anotación de tipo, que es equivalente a omitir una anotación de tipo. El siguiente ejemplo muestra dos estados equivalentes, ambos de los cuales declaran una variable sin tipo x:

Cuestiones relacionadas