Flash CS3 - Flash CS4

Free tutorials and scripts for all.
Actionscript 3.0

Object Oriented Programming - lezione 8 - le costanti

This is a discussion on Object Oriented Programming - lezione 8 - le costanti within the Programmazione Orientata agli Oggetti - tutorials forums, part of the Articoli e tutorials category; Dopo aver visto le proprietà ( variabili all' interno di una classe Actionscript 3.0 ), possiamo introdurre ora le costanti. Le ...


Go Back   Forum Flash CS3 Flash CS4 > Flash CS3 e Actionscript 3.0 > Articoli e tutorials > Programmazione Orientata agli Oggetti - tutorials

Register FAQ Members List Calendar Search Today's Posts Mark Forums Read
  #1 (permalink)  
Old 21-09-07, 17:52
Administrator
 
Join Date: Jul 2007
Location: Cesena
Posts: 4,486
Rep Power: 6
Flep is on a distinguished road
Object Oriented Programming - lezione 8 - le costanti

Dopo aver visto le proprietà ( variabili all' interno di una classe Actionscript 3.0 ), possiamo introdurre ora le costanti.

Le costanti sono una nuova caratteristica implementata nella versione 3.0, infatti con la 2.0 non erano presenti.



Per convenzione vengono dichiarate utilizzando un nome in maiuscolo in modo da capire a prima vista che si tratta di costanti e non di variabili ( proprietà ).

Si puà definire un valore di una costante ma non lo si può cambiare.

Se si utilizza più di una parola nel nome della costante, allora è buona norma inserire un underscore tra le parole.

Ad esempio, Event.COMPLETE, COMPLETE è una costante della classe Event.

MouseEvent.CLICK, CLICK è ua costante della classe MouseEvent.



Vediamole bene con alcuni esempi...

Creo un FLA che salvo con nome ' ottava.fla '.

Creo la Document Class da associare al FLA, Ottava.as :
Code:
package
{
    import flash.display.MovieClip;
    
    public class Ottava extends MovieClip
    {
        public function Ottava()
        {
            
        }
    }
}
Ora dichiaro una costante:
Code:
package
{
    import flash.display.MovieClip;
    
    public class Ottava extends MovieClip
    {
        private const NOME:String='Filippo';
        
        public function Ottava()
        {
            
        }
    }
}
private const NOME:String='Filippo';

private sappiamo bene cosa significa

const dichiara a Flash che si tratta di una costante e non di una variabile

NOME è il nome della costante ( maiuscolo )

:String è il tipo di valore che accetta ( esattamente come le variabili )

='Filippo'; il valore della costante

Si accede al contenuto di una costante esattamente come si accede al ciìontenuto di una variabile:
Code:
package
{
    import flash.display.MovieClip;
    
    public class Ottava extends MovieClip
    {
        private const NOME:String='Filippo';
        
        public function Ottava()
        {
            trace(NOME);
        }
    }
}
con trace(NOME);

ottengo il seguente output

Filippo

Non è possibile assegnare un valore ad una costante successivamente alla sua dichiarazione. Ad esempio, dichiaro un' altra costante:
Code:
package
{
    import flash.display.MovieClip;
    
    public class Ottava extends MovieClip
    {
        private const NOME:String='Filippo';
        private const ETA:int;
        
        public function Ottava()
        {
            trace(NOME);
        }
    }
}
se pubblico l' SWF, Flash mi restituisce questo errore:

Warning: 1110: The constant was not initialized.

Dice cha non abbiamo assegnato un valore alla costante, infatti se provassimo ad assegnarlo dalla funzione costruttrice
Code:
package
{
    import flash.display.MovieClip;
    
    public class Ottava extends MovieClip
    {
        private const NOME:String='Filippo';
        private const ETA:int;
        
        public function Ottava()
        {
            trace(NOME);
            ETA=35;
        }
    }
}
Flash restituirebbe questo errore:

1049: Illegal assignment to a variable specified as constant.

in sostanza dice che stiamo cercando di assegnare un valore ad una costante in un modo non consetito e cioè dopo la dichiarazione della costante.

Quindi, quando dichiaro una costante devo per forza assegnarle anche un valore che rimarrà il medesimo per tutta l' applicazione.

Per quanto riguarda gli attributi di una costante, sono gli stessi che vengono applicati alle variabili:

private, internal, protected, public e static

consiglio di dare uno sguardo alla lezione 4 per chi avesse dei dubbi sugli attributi delle proprietà.

Allego i files:
Attached Files
File Type: zip lezione_8.zip (7.1 KB, 31 views)

__________________

 


I recommend: Essential Actionscript 3.0

- Non rispondo ai messaggi privati con domande tecniche. Apri una discussione sul forum !
- I do not reply technicians pvt messages. Open a thread !

Last edited by Flep; 05-06-08 at 12:01..
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

Reply

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is On
Trackbacks are On
Pingbacks are On
Refbacks are On
Forum Jump

Similar Threads

Thread Thread Starter Forum Replies Last Post
Object Oriented Programming - lezione 7 - packages Flep Programmazione Orientata agli Oggetti - tutorials 2 28-10-08 14:12
Object Oriented Programming - lezione 9 - l' Ereditarietà Flep Programmazione Orientata agli Oggetti - tutorials 16 10-10-08 16:36
Object Oriented Programming - lezione 3 - i metodi Flep Programmazione Orientata agli Oggetti - tutorials 1 26-06-08 16:49
Object Oriented Programming - lezione 6 - Getter & Setter Flep Programmazione Orientata agli Oggetti - tutorials 1 14-06-08 18:36
Object Oriented Programming - lezione 5 - attributi dei metodi Flep Programmazione Orientata agli Oggetti - tutorials 4 18-04-08 17:45


All times are GMT. The time now is 05:21.


Powered by vBulletin versione 3.7.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0 RC4
Forum SiteMap


FlepStudio
by Filippo Lughi
P.IVA 03605860406