• Nenhum resultado encontrado

A referência this

No documento Apostila Java interessante00 (páginas 67-77)

Na classe PessoaJuridica, o uso da palavra this é para evitar ambigüidade. Note que no método setIdade, o parâmetro chama-se idade e o atributo também tem o mesmo nome, ou seja, o mesmo identificador, neste caso o this separa o atributo do parâmetro.

O Java associa automaticamente a todas as variáveis e métodos referenciados com a palavra reservada this. Por isso, na maioria dos casos torna-se redundante o uso em todas as variáveis da palavra this.

Aplicação: Impedir ambigüidade de nome de variáveis.

Restrição: Não pode ser aplicada a métodos estáticos, por exemplo, o método main. Exemplo:

Existem casos em se faz necessário o uso da palavra this. Por exemplo, podemos necessitar chamar apenas uma parte do método passando uma instância do argumento do objeto. (Chamar um classe de forma localizada);

Linguagem de Programação JAVA

JB100 Java Básico

JB100 Java Básico

Coleções

import java.util.*;

public class TestHashTable {

public static void main(String Arg[]) {

Hashtable table = new Hashtable(); table.put("1", "Joao"); table.put("2", "Jose"); table.put("3", "Maria"); table.put("4", "Marta"); table.put("5", "Pedro"); table.put("6", "Mateus");

String find = (String) table.get("4"); System.out.println(find);

} }

Hashtable (API: Java.util)

A tabela de hash é uma estrutura de dados que permite procurar os itens armazenados em tabela utilizando uma chave associada. O formato padrão de entrada de dados na

tabela é chave e valor. Para construir uma tabela de hash em Java, devemos criar um objeto Hashtable,

utilizando o construtor Hastable. Para adicionar elementos na tabela usaremos o método put, put(object key, Object

value). Este método é da classe Hashtable. Para recuperar o elemento usado como

chave, devemos usar o método get, get(object key). Para remover um elemento usamos o método remove.

Exemplo:

Implementação de tabela Hash e uso dos métodos

put e get API

Fundamentos da Linguagem Java

O que são coleções?

Coleções (também conhecidas como container) é um simples objeto que pode agrupar múltiplos elementos. Coleções são utilizadas para armazenar, recuperar e manipular dados. Os métodos são responsáveis por realizar as operações. A estrutura das coleções inclui uma variedade de recursos que simplificam o desenvolvimento. Essa é uma implementação da noção de reúso de código. Um exemplo de coleção poderia ser uma lista de nomes e telefones.

Linguagem de Programação JAVA

JB100 Java Básico

JB100 Java Básico

Enumeration (API: Java.util.Enumeration)

Retorna uma enumeração de uma coleção (Tabela Hash, por exemplo) especificada. Principais métodos: hasMoreElements e nextElements.

import java.util.Enumeration.*; import java.util.*;

public class EnumerationExemplo {

public static void main(String Arg[]) {

Hashtable table = new Hashtable(); table.put("1", "Joao"); table.put("2", "Jose"); table.put("3", "Maria"); table.put("4", "Marta"); table.put("5", "Pedro"); table.put("6", "Mateus"); Enumeration e = table.elements(); while(e.hasMoreElements()){

String valor = (String) e.nextElement(); System.out.println(valor); } } } Usando a Interface Enumeration, podemos imprimir todos os valores contidos na tabela Hash Tabela Hash e métodos API Exemplo:

Fundamentos da Linguagem Java

Coleções

import java.util.Iterator.*; ...

Iterator i = table.values().iterator(); while(i.hasNext()){

String valor = (String)i.next(); System.out.println(valor);

Opcionalmente podemos usar

Iterator que tem a funcionalidade

Linguagem de Programação JAVA

JB100 Java Básico

JB100 Java Básico

Vector (API: Java.util)

A classe Vector possibilita a criação de vetor dinâmico para armazenamento de

referências de objetos, que pode ser indexado por número inteiro. Métodos principais: addElement(), remove(), size(), element() entre outros

import java.util.*; public class TestVector {

public static void main(String Arg[]) {

Vector v = new Vector(); Integer y; for(int x=0;x<5;x++) { y = new Integer(x); v.addElement(y); }

Object[] objArray = v.toArray(); for(int x=0;x<5;x++) { System.out.println(objArray[x]); } } }

Exercício: Use Enumeration para listar todos os elementos de Vector. Exemplo:

Declaração do Vector

Adiciona valores ao Vector. Note que estes valores são do tipo referência,

ou seja, objetos

Converte um Vector para um array .

API

Fundamentos da Linguagem Java

Linguagem de Programação JAVA

JB100 Java Básico

JB100 Java Básico

ArrayList ( API: Java.util). ArrayList é array dimensionável da Interface List parecido com Vector. No exemplo

abaixo é permitido que os valores sejam duplicados, porém, desordenados. Principais métodos: add, remove, clear, size, isEmpty, get, set, iterator.

import java.util.*;

public class ListExemplo {

public static void main(String[] args) { List list = new ArrayList();

list.add("um");

list.add(new Integer(4)); list.add("terceiro"); list.add(new Integer(4)); System.out.println(list); Vector v = new Vector(); Integer y; for(int x=0;x<5;x++) { y = new Integer(x); v.addElement(y); }

List listVector = new ArrayList( v ); System.out.println(listVector);

} } Declaração do ArrayList

Inserção de valores na lista. Veja que estes valores são objetos

Imprime os valores da lista API

Uma nova coleção

Uma outra construção para a lista, neste caso ela recebe uma coleção como argumento

Imprime todos os valores da lista Exemplo:

Fundamentos da Linguagem Java

Linguagem de Programação JAVA

JB100 Java Básico

JB100 Java Básico

HashSet (API: Java.util)

A classe HashSet Implementa a interface Set, ela também tem suporte da HashTable. Ela é uma coleção que não pode conter elementos duplicados. Principais métodos: add, clear, remove, size, iterator e isEmpty.

import java.util.*;

//Com ordem e sem repetição public class SetExample {

public static void main(String[] args) { Set set = new HashSet();

set.add(”dois"); set.add("3rd"); set.add(new Float(11.1F)); set.add(”quarto"); set.add(new Float(11.1F)); System.out.println(set); } } API Declaração do HashSet

Inserção de valores na lista. Veja que estes valores são objetos

Imprime os valores da lista Exemplo:

Fundamentos da Linguagem Java

Linguagem de Programação JAVA

JB100 Java Básico

JB100 Java Básico

Fundamentos da Linguagem Java

Linguagem de Programação JAVA

JB100 Java Básico

JB100 Java Básico

Pacotes

A linguagem Java é estruturada em pacotes, estes pacotes contém classes que por sua vez contém atributos e métodos. Pacote é forma de organização da linguagem Java,

prevenindo de problemas como a repetição de identificadores (nomes) de classes e etc. Podemos usar a estrutura de pacotes para associar classes com semântica semelhante, ou seja, classes que tem objetivo comum. Por exemplo, colocaremos em único pacote todas as classes que se referem a regras de negócios.

Exemplo:

Aplicação

Interface de Usuário

Controle Regras de Negócios

Fisicamente os pacotes tem a estrutura de diretório e subdiretório, isto quer dizer que a Aplicação terá a seguinte formato:

Aplicação

Regras de Negócios Interface de Usuário

Controle

Pacotes

Linguagem de Programação JAVA

JB100 Java Básico

JB100 Java Básico

Pacotes

Package

Esta instrução deve ser declarado na primeira linha do programa fonte, este instrução serve para indicar que as classes compiladas faz parte do conjunto de classes (package), ou sejam uma pacote, indicado pela notação path.name (caminho e nome do pacote). Sintaxe: package <path.name>;

package MyPck; public class ClassPkg { public ClassPkg() { System.out.println("Teste de package..."); } }

Gerar pacotes: javac -d . *.java

import MyPck.ClassPkg; public class TestPkg {

public static void main(String args[]) {

ClassPkg p = new ClassPkg(); } } Diretório Corrente MyPck ClassPck.class --- --- --- --- TestPck.class

Pacotes

Import

A instrução import faz importação para o arquivo fonte (.java) das classes indicadas, cujo o diretório base deve estar configurado na variável de ambiente: CLASSPATH.

Sintaxe: import <classes>; Exemplos:

import java.awt.Button; import java/awt/Button;

Substituindo os pontos por barras teríamos o caminho

Aqui estaríamos importando somente o objeto Button

import java.awt.*;

Linguagem de Programação JAVA

JB100 Java Básico

JB100 Java Básico

Linguagem de Programação JAVA

JB100 Java Básico

JB100 Java Básico

Programação Orientada a Objetos

As classes é parte mais importante de um sistema orientada a objetos. Usamos as classes para capturar o vocabulário do sistema que está em

desenvolvimento. Essas classes podem incluir abstrações que são parte do domínio do problema, assim como as classes que fazem implementação de operações. Podemos usar ainda as classes para representar itens de software, de hardware e até itens que sejam somente conceituais.

Exemplo:

A classe Pessoa deverá ter atributos e métodos comuns

Pessoa

No documento Apostila Java interessante00 (páginas 67-77)

Documentos relacionados