Come tutti sappiamo un costruttore inizializza un oggetto nel momento in cui viene creato ed in linea di massima è utilizzato per assegnare valori iniziali alle variabili di istanza o per eseguire procedure di avvio necessarie per creare un oggetto completamente formato.
A volte però non è consigliabile concedere agli utenti della classe l?accesso al costruttore per svariati motivi. Ecco che in questo caso si ricorre ad una class factory per la costruzione degli oggetti.
using System; class MyClass { int var1, var2; // crea una class factory per MyClass public MyClass factory(int a, int b) { MyClass obj = new MyClass(); obj.var1 = a; obj.var2 = b; return obj; } public void show() { Console.WriteLine("var1 = " + var1 + ", var2 = " + var2); } } class TestFactory { public static void Main() { MyClass x = new MyClass(); int a, b; // genera oggetti con factory for(a=0, b=5; a<5; a++, b--) { MyClass newObj = x.factory(a, b); newObj.show(); } } }
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
I più letti di oggi
- Creare un messaggio di posta in diversi formati con ASP.NET 2.0
- Caricare un DTO esposto da un servizio tramite una query LINQ to Entities in Entity Framework
- Utilizzare il metodo reduce in #javascript https://aspit.co/ccc di @morwalpiz
- Elencare gli utenti di un dominio NT con ADSI
- Utilizzare SQL e #linq per eseguire una query con #entityframework Core https://aspit.co/bfv di @sm15455 #efcore1
- Disponibile il codice sorgente di ASP.NET MVC
- Concludiamo in bellezza con Giancarlo Sudano di Microsoft: q# for quantum programming Siamo in live streaming da: https://aspit.co/netconf-22 #aspilive #netconfit
- Caricare i dati di configurazione allo startup di un'applicazione Angular
- rilasciati nuovi template per la #aspnet web pages. funzionano anche con #webmatrix: http://u.aspitalia.com/lu
- Creare automaticamente una pipeline YAML da una sua definizione in Azure DevOps