Pesquisar este blog

quarta-feira, 3 de abril de 2013

Revisao antes da P1

Arquivo de Revisao para antes da P1:

public class Construtor extends Object {
    private int id; //so sera acessivel dentro desta classe
     protected boolean ativo  = false; // so sera acessivel de dentro desta classe e dos filhos desta classe
     String padrao="Padrao"; // apenas dentro do mesmo pacote, dentro desta classe e dentro dos filhos desta classe

     public String publica = "publica"; // acessado de todos os lugares
     private String nome;
     //Construtor
     public Construtor(String nome, int id){
         this.nome= nome;
         this.id=id;
    }
     //metodo
     public String getNome(){
         return this.nome;
    }

     public int getId(){
         return this.id;
    }

    public static void main(String [] args){
         Construtor cons = new Construtor(" Danilo",1);
        cons.getNome();
        cons.equals("string");
        cons.equals(null);
        " string".equals(cons);
        //{'s','t',...}
    }

     //equals deve retornar obrigatoriamente true // a objetos iguais e false a objetos
    // diferentes
    public boolean equals(Object obj){
        if(this == obj) {
            return true;
        }

         if(obj == null){
             return false;
        }

         if(this.getClass()!=obj.getClass()){
             return false;
        }

         Construtor argumento = (Construtor)obj;

         if(this.getNome()!= argumento.getNome() && this.getNome()!= null && !this.getNome().equals(argumento.getNome)){
             return false;
        }

         if(this.getId()!=argumento.getId()){
             return false;
        }
        return true;
    }

     //retorna obrigatoriamente o mesmo valor inteiro a objetos onde o equals seja verdadeiro,
    // nao necessariamente dois objetos com o mesmo hashcode serao iguais
     public int hashCode(){
         int primo = 7;
         int resultado=1;
         if(this.getNome!=null){
             resultado*=this.getNome().hashCode()*primo;
        }
         if(id!=0){
             resultado*=this.id*primo;
        }

         return resultado;
    }
}


   public class FilhoConstrutor() extends Construtor{
       public FilhoConstrutor(){
          ativo=true;
      }
   }
 }

Nenhum comentário:

Postar um comentário