Ho imparato C # nel corso degli ultimi sei mesi circa e ora sto approfondendo Java. La mia domanda riguarda la creazione di istanze (in entrambe le lingue, in realtà) ed è più di: mi chiedo perché l'hanno fatto in quel modo. Prendi questo esempio
Person Bob = new Person();
C'è una ragione per cui l'oggetto viene specificato due volte? Ci sarebbe mai stato un something_else Bob = new Person()
?
Sembrerebbe che se stavo seguendo dalla convention sarebbe più simile a:
int XIsAnInt;
Person BobIsAPerson;
O forse uno di questi:
Person() Bob;
new Person Bob;
new Person() Bob;
Bob = new Person();
Suppongo di essere curioso di sapere se esiste una risposta migliore di "è così che si fa".
Person Bob
dichiara una variabile di tipo "riferimento a Person
" chiamata Bob
. new Person()
crea un Person
oggetto. Riferimenti, variabili e oggetti sono tre cose diverse!
var bob = new Person();
?
Person Bob();
è possibile in C ++ e significa quasi la stessa cosa diPerson Bob = Person();
LivingThing
? Potresti scrivereLivingThing lt = new Person()
. Cerca eredità e interfacce.