quarta-feira, 21 de agosto de 2013

perguntas exames SCJP -Métodos Estáticos (static)

Métodos Estáticos - static


Pessoal queria aqui colocar algumas questões em Java que acho interessantes, para pensar um pouco, nas próximas postagem estarei colocando algumas coisas parecida com esta de hoje.

Dada as classes:


package exercicios.capitulo.dois.quinze;

public class
{
                 
}

//------------------------------

package exercicios.capitulo.dois.quinze;

public class B extends A
{

}

//---------------------------
package exercicios.capitulo.dois.quinze;

public class ComingThru 
{

                  static String s = "-";

public static void main(String[] args) 

{
                  A[] aa = new A[2];
                   B[] ba = new B[2];
                   sifter(aa);
                   sifter(ba);
                  sifter(7);
                  System.out.println(s);
}

                  static void sifter(A[]...a2)

                  {
                                   s += "1";
                  }

                  static void sifter(B[]...b2)

                  {
                                    s += "2";
                  }

                  static void sifter(B[] b1)

                  {
                                   s += "3";
                  }

                  static void sifter(Object o)

                  {
                                   s += "4";
                  }
}

///----------------------------------
Pergunta:
Passado este código, ao compilar e executar qual seria o Resultado???

  1.  -124 
  2.  -134 
  3.  -424
  4.  -434
  5.  -444


Resposta...
..
..
..
..
..
..
..
..
..
..
..
..
..
..

Resposta correta "4". 
explicacao: Em geral, métodos var-args sobrecarregados são escolhidos por ultimo. Lembre se de que arrays são objetos.Finalmente, um int pode ser inserido em um inteiro e, em seguida, “ampliado” para um objeto.
1,2,3,4,6 estão incorretas com base no esposto acima.

Fonte:
livro Kathy Sierra, pagina 101, exercicio 15.



Nenhum comentário:

Postar um comentário