O que é um objeto?

Objetos são essenciais para entender a tecnologia orientada a objetos. Olhe ao seu redor agora e você encontrará muitos exemplos de objetos do mundo real: seu cachorro, sua mesa, sua televisão, sua bicicleta.

Objetos do mundo real compartilham duas características: Todos eles têm estado e comportamento . Os cães têm estado (nome, cor, raça, fome) e comportamento (latir, buscar, abanar a cauda). As bicicletas também têm estado (marcha atual, ritmo atual do pedal, velocidade atual) e comportamento (mudança de marcha, mudança de ritmo do pedal, aplicação de freios). Identificar o estado e o comportamento de objetos do mundo real é uma ótima maneira de começar a pensar em programação orientada a objetos.

Reserve um minuto agora para observar os objetos do mundo real que estão perto de você. Para cada objeto que você vê, faça duas perguntas: “Quais os estados possíveis que esse objeto pode estar?” e “Que comportamentos esse objeto pode executar?”. Certifique-se de anotar suas observações. Ao fazer isso, você notará que os objetos do mundo real variam em complexidade; a lâmpada do seu escritório pode ter apenas dois estados possíveis (ligar e desligar) e dois comportamentos possíveis (ligar, desligar), mas o rádio pode ter estados adicionais (ligado, desligado, volume atual, estação atual) e comportamento (ligar , desligue, aumente o volume, diminua o volume, procure, digitalize e ajuste). Você também pode perceber que alguns objetos, por sua vez, também conterão outros objetos. Todas essas observações do mundo real se traduzem no mundo da programação orientada a objetos.

Objetos de software são conceitualmente semelhantes aos objetos do mundo real: eles também consistem em estado e comportamento relacionado. Um objeto armazena seu estado em campos (variáveis ​​em algumas linguagens de programação) e expõe seu comportamento através de métodos (funções em algumas linguagens de programação). Os métodos operam no estado interno de um objeto e servem como o principal mecanismo de comunicação entre objetos. Ocultar o estado interno e exigir que toda a interação seja realizada através dos métodos de um objeto é conhecido como encapsulamento de dados – um princípio fundamental da programação orientada a objetos.

Atribuindo estado (velocidade atual, ritmo atual do pedal e marcha atual) e fornecendo métodos para alterar esse estado, o objeto permanece no controle de como o mundo exterior pode usá-lo. Por exemplo, se a bicicleta tiver apenas 6 marchas, um método para mudar de marcha poderá rejeitar qualquer valor que seja menor que 1 ou maior que 6.

Agrupar código em objetos de software individuais fornece vários benefícios, incluindo:

  1. Modularidade: o código fonte de um objeto pode ser gravado e mantido independentemente do código fonte de outros objetos. Uma vez criado, um objeto pode ser facilmente passado dentro do sistema.
  2. Ocultar informações: ao interagir apenas com os métodos de um objeto, os detalhes de sua implementação interna permanecem ocultos do mundo exterior.
  3. Reutilização de código: se um objeto já existir (talvez escrito por outro desenvolvedor de software), você poderá usá-lo em seu programa. Isso permite que os especialistas implementem / testem / depurem objetos complexos e específicos de tarefas, nos quais você pode confiar para executar em seu próprio código.
  4. Conectividade e facilidade de depuração: se um objeto em particular for problemático, você pode simplesmente removê-lo do seu aplicativo e conectar um objeto diferente como substituto. Isso é análogo a corrigir problemas mecânicos no mundo real. Se um parafuso quebra, você substitui -lo , não a máquina inteira.

Fonte: https://docs.oracle.com/javase/tutorial/java/concepts/object.html

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *