Fala aí, Gleydson! Tudo certo, cara? =)
Essa confusão é bem comum e compreensível, mas vamos lá. =D
Uma vez me explicaram com uma analogia que achei bem válida: Uma classe é como uma receita de bolo. Com ela você consegue fazer bolos, certo? E, num cenário ideal, se você seguir a receita corretamente, você sempre terá o mesmo bolo, beleza? Já um objeto, seria como o bolo, de fato, ou seja, uma classe é como um molde para a criação de objetos! Conseguiu entender? =)
Como você apontou, paulo
, no seu exemplo, é a variável que está apontando para o endereço na memória onde está o objeto do tipo ContaCorrente
... Ahh, e um detalhe, você pode ter vários objetos em memória, cada um com uma variável responsável... Assim:
public class Programa {
public static void main(String[] args) {
ContaCorrente paulo = new ContaCorrente();
ContaCorrente fabio = new ContaCorrente();
}
}
Repare... No exemplo que eu dei temos dois objetos distintos, mas do mesmo tipo, ContaCorrente
... e as variáveis que estão referenciando esses objetos são paulo
e fabio
... E aí, mais claro? =)
Espero ter conseguido lhe ajudar a entender isso, mas qualquer dúvida que possa ter restado, não hesite em perguntar aqui, no fórum, para que possamos continuar ajudando-o, ok?
Abraço e bons estudos,
Fábio