Salve,
ho una classe che usa il pattern SingleTon e mi serve creare, in un'altra classe, un array di questi oggetti, ma non mi è possibile non potendo fare il new.
Come posso fare?
Grazie,
Matteo
Salve,
ho una classe che usa il pattern SingleTon e mi serve creare, in un'altra classe, un array di questi oggetti, ma non mi è possibile non potendo fare il new.
Come posso fare?
Grazie,
Matteo
Gutta cavat lapidem
[La goccia scava la pietra]
***
(Ovidio)
Autoreply
Mi sa che la domanda è stupida e mi son perso in un bicchiere d'acqua.
Posto che SingleTon è la mia classe che usa l'omonimo pattern.
Corretto?Codice PHP:SingleTon[] s = new SingleTon[2];
s[0] = SingleTon.getIstance();
s[1] = SingleTon.getIstance();
s[2] = SingleTon.getIstance();
...
s[0].aMethod()
![]()
Gutta cavat lapidem
[La goccia scava la pietra]
***
(Ovidio)
lo scopo di un singleton è assicurare che una classe abbia una sola istanza. Pertanto non puoi avere un array di singleton perche quando fai getIstance ti ritorna lo stesso oggetto.
Mio blog - http://ruletheobject.blogspot.com/
E come faccio ad avere 3 oggetti singleton tra loro collegati?
Forse con qualche altro tipo di collezione?
Gutta cavat lapidem
[La goccia scava la pietra]
***
(Ovidio)
il fatto è che un singleton non puoi fare new perche il pattern Singleton viene usato apunto per avere solo un oggetto. il new viene fatto solo una volta la prima volta che fai getIstance(). Le altre volte ti ritorna la stessa istanxa
Non puoi avere piu di uno singleton.
Codice PHP:public class Singleton{
private static Singleton instance;
private Singleton (){}
public static synchronized Singleton getInstance() {
if (instance == null) {
instance = new Singleton();
}
return instance;
}
}
Se vuoi piu oggetti di questo tipo non deve essere singleton deve avere il costruttore bublico e togli il metodo getIstance().
Mio blog - http://ruletheobject.blogspot.com/
Beh, in effetti a me serve che questo oggetto sia di tipo SingleTon.
In realtà a me servono proprio più copie di un oggetto di tipo SingleTon.
Secondo te il pattern Prototype che usa il metodo clone è una soluzione fattibile?
Grazie.
Gutta cavat lapidem
[La goccia scava la pietra]
***
(Ovidio)