Ciao,
solo con l'istruzione 'new' crei una istanza di una classe,
ovvero un oggetto che risiede in memoria.

la dichiarazione 'Dog d' non occupa indirizzi di memoria perchè non è un oggetto.

Dog d = new Dog() crea un oggetto che è referenziato dalla variabile d:
d è l'indirizzo di memoria dove risiede l'oggetto Dog.

Ciao