quinta-feira, 13 de outubro de 2011

Orientação a Objeto - Tudo é Objeto

O termo Orientação a Objeto é recente.... mas não tão importante... Significa que tudo é tratado como objeto... e o que é Objeto? É qualquer coisa... uma casa, uma pessoa, um pagamento, um estado, um sentimento, ou seja... qualquer coisa que pode ser concebido pelas pessoas.
Erroneamente as pessoas tratam O.O. como um termo referente a Classes, o que é incorreto, pois classe seria representado por uma ser ao limbo, esperando ser entendido por humanos.

Exemplo básico:
Animal é uma classe...
Cachorro é um objeto...
Mas para existir cachorro, você primeiro precisa definir o que é animal... exemplo: possui patas, cabeça, rabo, pêlos, olhos, etc...
 Mas... contudo, todavia, portanto, ainda não sabemos exatamente o que é cachorro, a não ser uma imagem que venha ao pensamento... Mas quem disse que seu cachorro é igual ao meu?????

Aqui está:

E ainda podemos definir ovelha como um objeto da classe Animal... Fácil neh???? Só não esqueça, objeto é protagonista... classe é coadjuvante... mas os 2 se complementam...

Assim na programação a O.O. você define uma classe com atributos e métodos... Atributos: cor, tamanho, quantidade. Métodos: correr, latir, durmir, etc... A partir dae você tem seus objetos podendo manipulá-los e inseri-los no contexto do seu sistema...

EXEMPLO BESTA:


    public class Animal
    {
        protected String cor;
        protected Int32 idade;
        protected Int32 velocidade;

        public Animal()
        {
            cor = "Amarelo";
            Correr();
        }

        public void Correr()
        {
            if (idade < 10)
            {
                velocidade = 100;
            }
            else
            {
                velocidade = 50;
            }
        }
    }
----- Acima temos a classe animal... onde definimos como o animal deve ser quando for instânciado ou utilizado.
Então quando quisermos criar um tipo de animal, não precisamos dizer tudo que já foi dito!!!!!!!!!!!!!!
Apenas façamos o seguinte:

    public class Cachorro extends Animal
    {
        protected String oQueFaco;

        public class Cachorro()
        {
            Latir();
        }
      
        public void Latir()
        {
            oQueFaco = "Latidos";      
        }
    }

Classe de Ovelhas:

    public class Ovelha extends Animal
    {
        protected String oQueFaco;

        public class Ovelha()
        {
            Berro();
        }
      
        public void Berro()
        {
            oQueFaco = "Berro";      
        }
    }

Assim Cachorro e Ovelha são animais, com algumas coisas em comum...
E o Objeto onde fica??????????????????????
public Cachorro Parrudo = new Cachorro();
Ou...
public Ovelha Xuxa = new Ovelha();

Agora temos um Objeto Cachorro, que late, da cor amarela e ao tempo em que for definida sua idade, vai ser definido sua velocidade pelo método Correr()....
e temos o Objeto Ovelha Xuxa... diferente do cachorro que late, ela berra... POKER FACE!!!!!!!!!!!!!

Isso ae... exemplo tosco, mas espero que ajude!!!!!!!!
Ateh!!!!!


Nenhum comentário: