Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Dúvida sobre Classe, Objeto e Instância

Gostaria de entender melhor os conceitos de:

Classe - definição e o que é; Objeto - definição e o que é; Instância - definição e o que é;

Após, gostaria de entender melhor o que é referência e cópia.

Se puderem por gentileza utilizar um exemplo com código.

Realmente esses conceitos ainda não fixaram em minha cabeça.

Aguardo retorno e obrigado.

1 resposta
solução!

Bom dia!

Em programação orientada a objetos muito se fala tanto em instâncias de classes como em objetos.

A palavra "objeto" existe porque o conceito da Orientação a Objetos é representar no software as características e comportamentos relevantes dos objetos reais do domínio.

Instância e objeto são termos intercambiáveis. Instância é a coisa técnica que permite a existência de um objeto na memória. A palavra Objeto, por sua vez, pode ser usada num nível mais alto de abstração.

Uma instância de uma classe é um novo objeto criado dessa classe, com o operador new. Instanciar uma classe é criar um novo objeto do mesmo tipo dessa classe. Uma classe somente poderá ser utilizada após ser instanciada.

Então ao modelar um sistema de notas fiscais, as notas e seus itens são objetos; e ao codificar o sistema, classes serão declaradas para definir estes objetos, e para que estes objetos existam na memória serão criadas instâncias destas classes.

Em um exemplo mais prático:

Classe:

public class NotaFiscal{.....} // não é objeto nem instância, é a definição de um objeto.

Instância:

var notaFiscal = new NotaFiscal(); // "notaFiscal" referencia uma instância

Objeto:

notaFiscal.setNumero(1234);  // a instância representa a Nota Fiscal 1234, que é um objeto de domínio e existe como objeto para além do código fonte.

Depois de os objetos serem persistidos as instâncias são removidas da memória e os objetos como os conhecemos no mundo real estarão seguros na base de dados até que precisemos lidar com eles novamente - e daí novamente vamos criar instâncias das suas classes para poder olhar para estes belos objetos e manipulá-los.