Utilização dos objetos em Java

Descrição dos objetos. Como cria-los ou instancia-los a partir das classes e de sua utilização.

Por Victorino Blanco González


Publicado em: 19/2/07
Valorize este artigo:
O primeiro que há que fazer para utilizar um objeto é tê-lo, não é? Portanto, vamos entender primeiro como se criam os objetos para depois utiliza-los.

Instanciação de objetos:

Para instanciar um objeto o método que se utiliza é "new". "New" cria um objeto da classe que lhe especificarmos, porém, antes disso temos que declarar a variável que conterá esse novo objeto. Vejamos em nossa classe Tabuleiro vista anteriormente.

Fichas estadoTabuleiro[][];
public Tabuleiro(){estadoTabuleiro=new Fichas [6][7];};


Nessas duas linhas se engloba todo o mecanismo de criação de um objeto. Na primeira linha se declara uma variável "estadoTabuleiro" da classe "array". A classe "array" é uma classe utilitária de Java que está incluída em "Java.lang" e portanto, como já comentei uma vez e explicarei melhor mais adiante, se encontra disponível desde qualquer programa em Java.

À princípio esta variável está vazia, não contém nenhum objeto, porém está "preparada" para conter um objeto da classe "array".

Na segunda linha desse código há mais o que comentar: Trata-se da definição de um construtor simples para a classe "Tabuleiro".

Quando se executa uma sentença "new" para criar um objeto de uma classe, o que realmente se faz é chamar ao método construtor correspondente a essa classe. Por exemplo, se executamos esta sentença:

Tabuleiro meuTabuleiro = New Tabuleiro();

Estamos chamando ao método anterior:

public Tabuleiro(){estadoTabuleiro=new Fichas [6][7];};

Portanto o que conseguimos é criar a variável interna de "Tabuleiro", que chamamos "estadoTabuleiro" como um objeto "array" de dimensões 6x7 que são as dimensões de um tabuleiro de "quatro em linha". Como vemos, igual que com nossa classe tabuleiro e qualquer outra classe, também usamos "new" para criar o "array".

Por último, e como se pode compravar, para definir um construtor para nossa classe simplesmente definimos um método que como peculiaridade tem o mesmo nome da classe na qual se define. Enquanto ao seu modificador de acesso o normal é que seja "public", porém, pode ser também "private" em cujo caso só será acessível através de um método "static" da mesma classe. Já explicaremos este último melhor, por agora simplesmente temos só que saber que existe.

Passo de mensagens:

Como "passo de mensagens" entende-se em programação orientada a objetos o que sempre chamamos em programação tradicional: "chamada a uma função". No fundo se pensamos vemos basicamente que:
  • Em primeiro lugar: Os programas "sobre o papel" são as classes.
  • Em segundo lugar: As classes "sobre papel" se relacionam com outras classes. Por exemplo, nossa classe Ficha utiliza para definir seu parâmetro "cor" à classe "String" própria de Java.
  • Em terceiro lugar: Na "vida real", ou seja, em funcionamento, as classes mostram-se como "objetos".
  • Como conclusão: São os objetos os que colaboram e se relacionam com outros objetos, e o fazem mediante o "passo de mensagens".
Para executar um método de uma classe se utiliza esta sintaxe:

NomeDaClasse.nomeDoMetodo(parâmetros do método);

Os passos de mensagens têm uma vantagem com respeito Às chamadas à função das linguagens tradicionais. A vantagem é que sempre levam um parâmetro implícito: O objeto ao que pertence o próprio método. Veremos com um exemplo muito simples.

Imaginamos um método e uma função que simplificam uma fração passada como parâmetro. A diferença seria a seguinte ao utilizar tanto o método como a função.

Programação tradicional:

fracao_simp = simplifica_fracao(fracao);
/*fracao_simp salva o resultado
de aplicar a funcao simplifica_fracao
ao parametro fracao*/


Programação orientada a objetos:


ObjetoFracao.simplificaFracao();
/*este caso poderiamos entender como que
simplemente decimos a fracao que se
simplifique a ela mesma "como ela sabe" */

Como vemos em Programação orientada a objetos não se passa como parâmetro a fração a simplificar visto que é o mesmo objeto que é a fração e o que por sua vez possui o método para simplifica-la de acordo com seus atributos internos.

Acesso às variáveis internas de um objeto:

Para acessar a uma variável interna de um objeto esta tem que ser acessível segundo as normas vistas anteriormente. No caso de que simplesmente podamos acessá-la com a seguinte sintaxe:

NomeDaClasse.nomeDaVariavelInterna;






Usuários :    login / registro

Manuais relacionados
Categorias relacionadas
O autor

Home | Sobre nós | Copyright | Anuncie | Entrar em contato