A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Classes Objetos Atributos Métodos Coletor de Lixo (Garbage Collector ) Confraria do Java Nivelamento. Caroline, Marcelo e Luiz 12/05/2007.

Apresentações semelhantes


Apresentação em tema: "Classes Objetos Atributos Métodos Coletor de Lixo (Garbage Collector ) Confraria do Java Nivelamento. Caroline, Marcelo e Luiz 12/05/2007."— Transcrição da apresentação:

1 Classes Objetos Atributos Métodos Coletor de Lixo (Garbage Collector ) Confraria do Java Nivelamento. Caroline, Marcelo e Luiz 12/05/2007

2 CLASSE É um modelo abstrato, a partir do qual serão criadas instâncias desta classe, contendo os métodos e os dados nela definidos. A classe é um modelo, que define as propriedades e comportamento que um grupo de objetos possui em comum.

3 Exemplo: class Pessoa { String nome; int idade; String telefone; void aniversario(){ idade ++; } String infomarTelefone(){ return telefone; } Atributos Métodos

4 ATRIBUTOS São itens que identificam um objeto. Por exemplo: Todos os objetos pessoa possuem as propriedades: nome, idade, telefone,...

5 OBJETOS São instâncias de uma classe. Cada objeto de uma classe tem a mesma estrutura de dados e operações. Entretanto os valores mantidos nesta estrutura de dados são únicos para cada objeto.

6 Exemplo: Pessoa pessoa=new Pessoa(); A partir de agora meu objeto pessoa pode ser utilizado para guardar dados. Eu posso incluir dados assim: pessoa.nome=“João”; pessoa.idade=33; pessoa.telefone=“2223311”;

7 MÉTODOS São as ações que podem ser realizadas pelo objeto. Um método em Java é equivalente a uma função em outras linguagens, com a diferença que ele deve ser definido dentro da declaração da classe.

8 Exemplo: class Pessoa { String nome; int idade; String telefone; void aniversario(){ idade ++; } String informarTelefone(){ return telefone; } Método que aumenta em 1 ano a idade de uma pessoa Método que retorna o valor da variável telefone

9 Agora, para um teste, poderíamos fazer: Pessoa pessoa = new Pessoa(); pessoa.nome = "Joao"; pessoa.idade = 33; pessoa.telefone = “32223311"; System.out.println ("Idade antiga"+pessoa.idade); pessoa.aniversario(); System.out.println ("Nova idade"+pessoa.idade); //Perceba que o valor da idade foi alterado System.out.println(“Telefone=“ + pessoa.informarTelefone()); //Perceba que o valor do telefone foi retornado pela função

10 GARBAGE COLLECTOR O coletor tem um conceito de funcionamento bem simples. Se não houver qualquer referência a um objeto que tenha sido criado na memória, o coletor de lixo destrói o objeto e libera a memória ocupada por ele.

11 O coletor de lixo é executado de tempos em tempos. Quando a JVM (Máquina Virtual Java) percebe que o sistema diminuiu a utilização do processador, ele libera o coletor de lixo, que vasculha a memória em busca de algum objeto criado e não referenciado. GARBAGE COLLECTOR

12 Liberando um objeto Uma maneira de tornar um objeto candidato a ser retirado da memória pelo coletor de lixo é atribuindo o valor null a sua referência. Com isso, o objeto torna-se não referenciado e pode ser retirado da memória pelo coletor de lixo.

13 GARBAGE COLLECTOR Exemplo de liberação de memória import java.util.*; class GarbageExample { private static Vector vetor; public static void main(String args) { vetor = new Vector(); for (int a=0; a < 500; a++) vetor.addElement(new StringBuffer("teste")); Runtime rt = Runtime.getRuntime(); System.out.println("Memória Livre: " +rt.freeMemory()); // mostra a memória livre vetor = null; // atribui nulo para a variável “vetor” System.gc(); // faz a chamada explícita do coletor de lixo System.out.println("Memória Livre: " + rt.freeMemory()); // mostra a memória livre }

14 Criando Objetos class Principal { public static void main (String[ ] args) { Carro c1 = new Carro(); System.out.println(“Id do objeto c1 = “ + c1); c1. ano = 2005; Carro c2 = new Carro(); System.out.println(“Id do objeto c2 = “ + c2); c2 = c1; // Cuidado ! System.out.println(“Id do objeto c2 = “ + c2); c1 = new Carro(); // Cuidado ! System.out.println(“Id do objeto c1 = “ + c1); }

15 Criando Objetos Observações: –Atribuições entre variáveis que são referências à objetos (c2 = c1) faz com que haja um redirecionamento dos ponteiros de memória (c2 e c1 passam a apontar para a mesma área e o objeto referenciado por c2 fica “perdido no espaço”) –Utilizar a mesma variável para a criação de outro objeto (c1 = new Carro()) faz com que a referência ao objeto inicial seja redirecionada à nova área de memória (o objeto referenciado por c1 fica “perdido no espaço”)


Carregar ppt "Classes Objetos Atributos Métodos Coletor de Lixo (Garbage Collector ) Confraria do Java Nivelamento. Caroline, Marcelo e Luiz 12/05/2007."

Apresentações semelhantes


Anúncios Google