Guida programmazione orientata agli oggetti » Torna alla lezione

Esempio di astrazione [Actionscript]

Le classi astratte non sono supportate dal linguaggio ActionScript. Ad ogni modo è possibile simulare una classe astratta tramite l'uso delle interfacce, come mostrato nel seguente esempio:

interface IAbstract
{
    function MetodoAstratto();
}
 
class ClasseAstratta
{
    private var sub:IAbstract;
 
    // Utilizza un costruttore privato per non consentire la creazione di istanze
    // di questa classe
    private function ClasseAstratta()
    {
        // Esegue un "cast" della classe figlia all'interfaccia Iabstract che contiene
        // il metodo astratto MetodoAstratto.
        sub = IAbstract(this);
        
        if(sub == null) 
        {
            throw("Le classi derivate da ClasseAstratta devono implementare il
                   metodo MetodoAstratto");
        }
 
         sub.MetodoAstratto();
    }
}
 

class ClasseEstesa extends ClasseAstratta implements IAbstract
{
    ..........
}