Classe vs. Objeto

Na programação orientada a objetos, um classe é uma construção que define uma coleção de propriedades e métodos. Você pode pensar nisso como um modelo. Por exemplo,

item de classe public $ itemType; /* por exemplo. pode ser "Livro" ou "CD" * / preço público $; função pública printPrice () echo "O preço deste $ this-> itemType é de $ this-> price dólares.";  $ catch22 = novo item (); $ catch22-> itemType = "Livro"; $ catch22-> preço = 25; $ catch22-> printPrice (); / * saídas O preço deste livro é de 25 dólares. * / $ americanPrayer = novo Item (); $ americanPrayer-> itemType = "CD"; $ americanPrayer-> price = 22; $ americanPrayer-> printPrice (); / * saídas O preço deste CD é de 22 dólares * / 

Observe que, neste exemplo, $ catch22 e $ americanPrayer são 2 objetos. Objetos são instâncias de uma classe. Eles compartilham a estrutura comum que a classe define. Essa estrutura comum consiste nas propriedades ($ itemType e $ price no exemplo acima) e métodos (funções; printPrice () no exemplo acima) da classe. No entanto, as propriedades de objetos diferentes podem ser diferentes.

No exemplo acima, o preço e o tipo de item são diferentes para 2 objetos da mesma classe. Mas ambos os objetos têm um método printPrice (), um preço propriedade e um Tipo de item propriedade que pode ser usada.

ClasseObjetoDefinição Classe é um mecanismo de ligação de membros de dados e métodos associados em uma única unidade. Instância da classe ou variável da classe. Existência É existência lógica É existência física Alocação de memória O espaço da memória não é alocado quando é criado. O espaço da memória é alocado, quando é criado. Declaração / definição A definição é criada uma vez. é criado muitas vezes, conforme necessário.

Casos especiais

Em algumas linguagens de programação, p. Python, tudo é um objeto. Isso significa que funções, variáveis, instâncias de uma classe e até classes reais são tratadas como objetos pela linguagem de programação.