Fala, meus consagrados! Beleza?
Os objetos são a essência da Programação Orientada a Objetos. Esse paradigma de programação que enfatiza a importância de organizar o software em torno de dados, ou objetos, em vez de funções e lógica.
Os objetos são a peça-chave do entendimento do conceito de POO, permitindo a modelagem de sistemas complexos por meio da representação de entidades do mundo real e suas interações. São instâncias das classes:
- O estado e o comportamento de um objeto são definidos pela sua classe;
- Os objetos (instâncias) de uma classe compartilham o mesmo conjunto de atributos e métodos;
- Embora sejam diferentes quanto ao conteúdo desses atributos.
Figura 1: Características de um objeto.
Os objetos são instâncias de classes, que podem ser vistas como moldes ou templates. Cada objeto encapsula dados e comportamentos relacionados a esses dados na forma de atributos (também conhecidos como propriedades ou campos) e métodos (funções ou procedimentos). Esta organização em torno de objetos facilita a modelagem de entidades do mundo real dentro do software, tornando o código mais intuitivo, reutilizável e fácil de manter.
Os objetos possuem as seguintes características:
- Identidade:
- Cada objeto tem uma identidade única, um endereço na memória que o diferencia de outros objetos, mesmo que seus dados (atributos) sejam idênticos;
- Estado:
- O estado de um objeto é definido pelo conteúdo de seus atributos em um determinado momento;
- O estado de um objeto pode mudar ao longo do tempo, em resposta a métodos invocados sobre ele.
- Comportamento:
- O comportamento de um objeto é expresso pelos métodos que ele expõe. Métodos definem as ações que um objeto pode realizar e como ele pode interagir com outros objetos.
Para a criação de um objeto, temos as seguintes fases:
- Declaração da variável-objeto:
- É a etapa de definição da variável-objeto para referenciar um novo objeto;
- Neste momento, não se pode utilizar o objeto;
- O objeto ainda não foi criado, mas sim uma referência a ele;
- Instanciação da classe:
- É a etapa da criação de um novo objeto;
- Nesta fase, para várias linguagens de programação, usa-se o operador new;
- Esse operador instancia uma classe, usando um dos seus construtores, alocando memória para um novo objeto e retornando uma referência para a memória; e
- Inicialização dos dados do objeto:
- É a etapa de inicialização do novo objeto, através de um construtor.
Figura 2: Fase de criação de um objeto.
Uma variável-objeto não é o mesmo que um objeto referencia um objeto e Pode:
- Ser inicializada com um objeto recém-criado:
- Classe variavelObjeto = new Classe(“Kal-El”);
- Referenciar um objeto já criado anteriormente:
- Classe variavelObjeto1 = new Classe(“Kal-El”);
- Classe variavelObjeto2 = variavelObjeto1;
Exemplo de uma classe:
public class Pessoa {
private String nome;
private String sobrenome;
public Pessoa(String nome, String sobrenome) {
this.nome = nome;
this.sobrenome = sobrenome;
}
}
Como exemplo de criação de um objeto (instância) dessa classe, temos:
// Declaração de uma variável-objeto chamada rogerio.
Pessoa rogerio;
// Instanciação da classe.
// Inicialização dos dados do objeto.
rogerio = new Pessoa(“Rogério”, “Araújo”);
Resumindo:
- Um objeto é uma instância de uma classe;
- Quando uma classe é definida, nenhum dado é alocado ou inicializado;
- Somente quando uma instância dessa classe é criada, ou seja, um objeto, é que o estado próprio do objeto vem à existência, com sua própria cópia dos atributos definidos pela classe;
- Cada objeto mantém seu estado independente das demais instâncias, permitindo que ele contenha valores únicos para os atributos definidos pela classe
Espero que tenham gostado!
Forte abraço e até a próxima jornada!
_________________________
Professor Rogerão Araújo
Quer ficar por dentro dos concursos públicos abertos e previstos pelo Brasil?
clique nos links abaixo:
Receba gratuitamente no seu celular as principais notícias do mundo dos concursos!
clique no link abaixo e inscreva-se gratuitamente:
Participe da conversa