Questa domanda ha già una risposta qui:
Non ne so molto dei linguaggi OO, ma da quello che ho visto sembra che la maggior parte dei linguaggi OO basati sulla classe utilizzi una parola chiave new
(o qualcosa di equivalente) per creare un oggetto. I linguaggi OO basati su prototipo come JavaScript lo imitano persino.
Dal punto di vista di mantenere la sintassi semplice, perché non omettere la parola chiave new
e utilizzare solo il costruttore (in genere con lo stesso nome della classe)?
C'è qualche considerazione semantica implicata nel prefisso al costruttore con una parola chiave new
?
Ho notato che in Scala, se definisci un case
-class, puoi semplicemente usare il costruttore senza un precedente new
per creare un oggetto, mentre per le altre classi devi usare new
. Non conosco la ragione. Lo dico semplicemente perché potrebbe essere correlato.