Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

costruttore private in quali casi?

1,013 views
Skip to first unread message

FanTux

unread,
Apr 21, 2008, 3:47:08 AM4/21/08
to
Ciao a tutti,

scusate la domanda forse banale ma in quali casi si può presentare la
necessità di rendere private la firma di un costruttore?

Message has been deleted

Luca Ferrari

unread,
Apr 21, 2008, 7:58:04 AM4/21/08
to
FanTux wrote:

In generale quando hai bisogno di un maggior controllo sulla creazione di
una classe, ad esempio tramite una classe factory o metodi factory, o se
devi creare una singleton....In sostanza ovunque tu possa voler negare la
creazione incontrollata di oggetti.

Luca

Marco

unread,
Apr 21, 2008, 8:31:13 AM4/21/08
to
FanTux ha scritto:

> Ciao a tutti,
>
> scusate la domanda forse banale ma in quali casi si può presentare la
> necessità di rendere private la firma di un costruttore?

In aggiunta a quanto ti è stato detto, io l'ho fatto in certi casi in
cui mi tornava utile avere un costruttore privato, che doveva servire
solo a definire i costruttori pubblici, ovvero da richiamare solo
all'interno della classe. Esempio:


public class pippo
{
private pippo(int a,String s,boolean b) //questo costruttore è
privato perché serve solo a definire i costruttori pubblici che seguono
{
//...
}

public pippo(int a,String s)
{this(a,s,false);}

public pippo(String s,boolean b)
{this(-1,s,b);}
}

rootkit

unread,
Apr 21, 2008, 2:03:23 PM4/21/08
to
FanTux ha scritto:

> scusate la domanda forse banale ma in quali casi si può presentare la
> necessità di rendere private la firma di un costruttore?

in generale quando si ha necessità di implementare i principali pattern
creazionali.


--
 Fino all'anno scorso avevo un solo difetto. Ero presuntuoso.
http://softvalley.blogspot.com
http://www.flickr.com/photos/marko_po/

Luca

unread,
Apr 23, 2008, 8:37:12 AM4/23/08
to

inoltre una classe con costruttore privato non può essere ereditata.

Andrea Francia

unread,
Apr 23, 2008, 8:54:36 AM4/23/08
to
Più esattamente non si può ereditare da una classe che ha TUTTI i
costruttori privati.

--
Andrea Francia
http://www.andreafrancia.it/

0 new messages