|
Avere una sola istanza di un oggetto..
|
| Autore |
Messaggio |
sbrandollo
Junior Member
Messaggi: 6
Registrato: Apr 2010
Offline
|
#31
RE: Avere una sola istanza di un oggetto..
(24-02-2010 13:17)CiroContinisio ha scritto: Ma infatti io quella cosa non la uso. E fra l'altro, in Flash non esistono i singleton nativamente. Sì possono implementare con un 'trucco', il mio preferito è questo:
Codice:
package managers
{
public class UserMan
{
private static var instance:UserMan;
//====================================================================================
public function UserMan(_enf:SingletonEnforcer):void
{
}
//====================================================================================
public static function getInstance():UserMan
{
if(instance == null) instance = new UserMan(new SingletonEnforcer());
return instance;
}
}
}
internal class SingletonEnforcer {}
E poi si accede ovunque tramite:
Codice:
UserMan.getInstance()
L'unica rogna è che non puoi passare parametri in fase di costruzione, anche se lo puoi fare in un secondo momento.
Questo era il mio umile contributo alla programmazione mondiale.
Ah,
Codice:
Tommo.getInstance() = null
Io in flash preferisco questo
Codice:
package
{
public final class Singleton
{
private static var instance:Singleton = new Singleton();
public function Singleton()
{
if( instance ) throw new Error( "Singleton and can only be accessed through Singleton.getInstance()" );
}
public static function getIstance():Singleton
{
return instance;
}
}
}
|
|
| 18-05-2010 6:10 |
|