Error
|
La classe Error è utilizzata per generare eccezioni e rappresenta la classe base per tutte le altre classi di eccezioni definite in ECMAScript: EvalError, RangeError, ReferenceError, SyntaxError, TypeError e URIError.
|
La classe Error funge da classe base per tutti gli errori runtime generati e si consiglia di usarla come modello per tutte le classi errore personalizzate.
|
ArgumentError
|
La classe ArgumentError rappresenta un errore che si verifica quando i parametri forniti durante la chiamata di una funzione non corrispondono ai parametri definiti per la funzione stessa.
|
Di seguito sono riportati esempi di ArgumentError:
-
A un metodo vengono forniti troppi o troppo pochi argomenti.
-
L'argomento previsto doveva essere membro di un'enumerazione, ma non lo è.
|
EvalError
|
Un'eccezione EvalError viene generata quando si passano dei parametri alla funzione di costruzione della classe Function o se il codice utente chiama la funzione
eval()
.
|
A differenza delle versioni precedenti, ActionScript 3.0 non supporta la funzione
eval()
e qualsiasi tentativo di utilizzarla genera un errore.
Le versioni precedenti di Flash Player utilizzavano la funzione
eval()
per accedere per nome a variabili, proprietà, oggetti e clip filmato.
|
RangeError
|
Un'eccezione RangeError viene generata quando un valore numerico è al di fuori dell'intervallo accettabile.
|
Ad esempio, la classe Timer genera un'eccezione RangeError se il ritardo specificato ha un valore negativo o non finito. Un'eccezione RangeError viene generata anche se si tenta di aggiungere un oggetto di visualizzazione a una profondità non valida.
|
ReferenceError
|
Un'eccezione ReferenceError viene generata quando si tenta un riferimento a una proprietà undefined su un oggetto chiuso (non dinamico). Le versioni precedenti del compilatore ActionScript non generavano un errore quando si tentava di accedere a una proprietà
undefined
. Tuttavia, in questa condizione, ActionScript 3.0 rileva un'eccezione ReferenceError.
|
Le eccezioni relative a variabili undefined segnalano la presenza di potenziali problemi e aiutano a migliorare la qualità del software. Tuttavia, se non siete abituati a inizializzare le variabili, questo nuovo comportamento di ActionScript richiede qualche modifica nella modalità di scrittura del codice.
|
SecurityError
|
Un'eccezione SecurityError viene generata quando si verifica una violazione della sicurezza e l'accesso viene negato.
|
Di seguito sono riportati esempi di SecurityError:
-
Viene effettuato un accesso non autorizzato a una proprietà o una chiamata non consentita a un metodo al di fuori di una funzione di sicurezza sandbox.
-
Viene effettuato un tentativo di accesso a un URL non autorizzato dalla funzione di sicurezza sandbox.
-
Si è tentato di effettuare una connessione socket a una porta, ma il file di criterio socket necessario non è disponibile.
-
Viene effettuato un tentativo di accesso alla fotocamera o al microfono dell'utente e l'accesso viene rifiutato dall'utente.
|
SyntaxError
|
Un'eccezione SyntaxError viene generata quando si verifica un errore di analisi nel codice ActionScript.
|
Un errore SyntaxError viene generato nelle seguenti circostanze:
-
ActionScript genera eccezioni SyntaxError quando la classe RegExp analizza un'espressione regolare non valida.
-
ActionScript genera eccezioni SyntaxError quando la classe XMLDocument analizza codice XML non valido.
|
TypeError
|
Un'eccezione TypeError viene generata quando il tipo effettivo di un operando è diverso dal tipo previsto.
|
Un errore TypeError viene generato nelle seguenti circostanze:
-
Non è stato possibile assegnare forzatamente un parametro effettivo di una funzione o di un metodo al tipo di parametro formale.
-
Un valore assegnato a una variabile non può essere assegnato forzatamente al tipo della variabile.
-
Il lato destro dell'operatore
is
o
instanceof
non è di tipo valido.
-
La parola chiave
super
viene utilizzata in modo non valido.
-
La ricerca di una proprietà restituisce più di un'associazione e pertanto è ambigua.
-
È stato chiamato un metodo su un oggetto incompatibile. Ad esempio, un'eccezione TypeError viene generata se un metodo di classe RegExp viene associato a un oggetto generico e successivamente chiamato.
|
URIError
|
Un'eccezione URIError viene generata quando una delle funzioni di gestione URI globali viene utilizzata in modo incompatibile con la propria definizione.
|
Un errore URIError viene generato nelle seguenti circostanze:
Viene specificato un URI non valido per una funzione dell'API di Flash Player che prevede un URI valido, come
Socket.connect()
.
|
VerifyError
|
Un'eccezione VerifyError viene generata quando si incontra un file SWF strutturato in modo errato o danneggiato.
|
Quando un file SWF carica un altro file SWF, il file SWF principale può rilevare un'eccezione VerifyError generata dal file SWF caricato.
|