Você está na página 1de 2

Criao de Classes Bom, a maneira de se criar classes mudou completamente.

Mas uma coisa importante a ser observada que a forma antiga continua funcionando normalmente. E inclusive, cdigo em ActionScript 2 compilado no mesmo bytecode de cdigo em ActionScript antigo. A primeira grande mudana: para criar classes, preciso usar arquivos de script EXTERNOS. So como arquivos CLASS do Java. So definidos separadamente e carregados no programa, quando necessrio. Mas ao mesmo tempo, no mais preciso usar #include. Ao invs, definimos um CLASSPATH (ou vrios), que um diretrio onde o Flash dever buscar as classes quando for necessrio. Por exemplo: var minhaSopa = new Sopa(); Com esta linha de cdigo, o compilador ir procurar e carregar um arquivo de script chamado Sopa.as (o nome do arquivo tem que ser exatamente o nome da classe), que dever estar no mesmo diretrio do SWF ou num diretrio que foi definido como CLASSPATH (esta configurao feita atravs d janela de preferncias do Flash). A classe Sopa poderia estar definida da seguinte forma: class Sopa { var sabor:String = ""; var ingredientes:Array = []; } A sintaxe do ActionScript 2 baseada no ECMA 262 Ed 4. Por isso, se voc quiser ficar por dentro, veja: http://www.mozilla.org/js/language/es4/index.html muito parecido com Java, mas bem limitado em comparao. Como voc pode notar, agora utiliza-se a palavra-chave "class" para definir classes. Ou seja, no precisamos mais simular isto com funes. Dentro de uma declarao de classe, a palavra-chave "var" assume o papel de definir propriedades (e no variveis locais como seria o caso em um outro cdigo) da classe. Com a declarao "var", tambm podemos definir o tipo exato de uma varivel. Se ela uma string (texto) ou number, por exemplo. Isto nos ajuda a evitar erros. Por exemplo, no caso da classe Sopa, se usssemos o seguinte script: minhaSopa = new Sopa(); minhaSopa.sabor = 10; Obteramos um erro e o SWF no seria compilado. Isto aconteceria porque na definio da classe, indicamos que a propriedade sabor uma string (texto), e no nmero: var sabor:String = "";

// o equivalente em Java seria: // String sabor = ""; O tipo de dado armazenado na varivel ou propriedade definido aps o sinal de dois pontos, logo aps o nome da varivel (no Java, o tipo de dado definido no comeo da declarao, como mostrei no exemplo acima). Na definio de mtodos, tambm possvel indicar quais os tipos de dado que devero ser passados como parmetros: class Sopa { var sabor:String = ""; var ingredientes:Array = []; function cozinhar(temperatura:Number, duracao:Number) { // cdigo da funo } } Com esta declarao, especificamos que o mtodo cozinhar() dever receber dois parmetros: temperatura e duracao. E ambos devem ter valores numricos. Caso contrrio, o SWF no ser compilado. Se voc parar para pensar, isso ajuda muito na preveno de erros que, no ActionScript de hoje, seriam muito difceis de detectar. Jonas Galvez

Você também pode gostar