Scala Tutorial – Impara come creare e usare gli oggetti complementari

Steps

1. Come definire una semplice classe per rappresentare un oggetto Donut

Iniziamo a definire una semplice classe che rappresenterà un oggetto Donut con le proprietà name e productCode. Questo esempio è una revisione del precedente tutorial su Come creare classi e oggetti in Scala.

Similmente al tutorial precedente, abbiamo anche una funzione print() che stamperà il nome e il productCode per un dato oggetto donut. Se non hai familiarità con la creazione di funzioni in Scala, puoi fare riferimento ai tutorial sulle funzioni.

2. Come dichiarare un oggetto compagno per la classe Donut

Un oggetto compagno è definito usando la parola chiave object e il nome dell’oggetto dovrebbe essere identico al nome della classe.

Inoltre, l’oggetto compagno dovrebbe definire un metodo apply() che sarà responsabile dell’istanza di un’istanza della classe data.

Siccome la classe Donut dal passo 1 richiede le proprietà name e productCode, stiamo anche fornendo parametri di input simili al metodo apply() come mostrato sotto.

3. Come creare istanze della classe Donut usando l’oggetto companion

Con l’oggetto companion definito nel passo 2 sopra, ora puoi creare istanze della classe Donut senza dover usare la parola chiave new.

NOTE:

  • Sicuramente potresti sostenere che l’oggetto companion non sta realmente aggiungendo alcun valore speciale oltre a non dover usare la parola chiave new.
  • Tuttavia, nel prossimo tutorial, vi mostrerò come il metodo apply() dell’oggetto compagno può essere usato come factory per la vostra classe.

4. Come chiamare la funzione print per ogni oggetto donut

Prossimo, chiamiamo la funzione print() dai nostri oggetti donut come mostrato sotto.

println("\nStep 4: How to call function on each Donut object")glazedDonut.printvanillaDonut.print

Dovresti vedere il seguente output quando esegui la tua applicazione Scala in IntelliJ:

Step 4: How to call the print function for each of the Donut objectDonut name = Glazed Donut, productCode = 1111Donut name = Vanilla Donut, productCode = 2222

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.