Eu aprendi C # nos últimos seis meses ou mais e agora estou investigando Java. Minha pergunta é sobre a criação de instâncias (em qualquer idioma, na verdade) e é mais sobre: Eu me pergunto por que eles fizeram dessa maneira. Veja este exemplo
Person Bob = new Person();
Existe um motivo para o objeto ser especificado duas vezes? Alguma vez haveria um something_else Bob = new Person()?
Parece que se eu estivesse seguindo a convenção, seria mais como:
int XIsAnInt;
Person BobIsAPerson;
Ou talvez um destes:
Person() Bob;
new Person Bob;
new Person() Bob;
Bob = new Person();
Suponho que estou curioso para saber se há uma resposta melhor do que "é assim que se faz".
Person Bobdeclara uma variável do tipo "referência a Person" chamada Bob. new Person()cria um Personobjeto. Referências, variáveis e objetos são três coisas diferentes!
var bob = new Person();?
Person Bob();é possível em C ++ e significa quase a mesma coisa quePerson Bob = Person();
LivingThing? Você poderia escreverLivingThing lt = new Person(). Procure por herança e interfaces.