Seja bem vindo ao Fórum do JavaFree.org
Aqui você irá encontrar respostas para TUDO o que você precisa sobre java.
Deseja participar? Crie sua conta ou efetue seu login
public class Teste {
public static void main(String[] args){
Teste t = new Teste();
Object o1 = "teste";
t.teste(o1);
Object o2 = new String("teste");
t.teste(o2);
}
public void teste(String s){
System.out.println("String");
}
public void teste(Object o){
System.out.println("Object");
}
}
Na linha 5 o objeto t chama o método teste(Object o) que resultará na saída "Object" e na linha 7 o objeto t chama o método teste passando uma String, que resulta na saída "String"... me corriga se eu estiver errado _________________Blog sobre mobilidade
mesmo que o Objeto o2 seja criado como uma new String() ele não deixa de ser tratado como Object! _________________Carlos E. A. Barretto
Bacharel em Ciência da Computação
Sun Certified Java Programmer 1.4
Sun Certified Web Components Developer 1.4
JavaFree.org
Acho que vai imprimir "Object" "Object", porque ele chama duas vezes o metodo que recebe em object como parametro, pq ele cria um Objetc com um String, mas qinda é um object.
acho que é isso.
String é subclasse de Object, logo String é um Object
mas se fosse criado :
String o2 = new String("teste");
apareceria String! e não Object! _________________Carlos E. A. Barretto
Bacharel em Ciência da Computação
Sun Certified Java Programmer 1.4
Sun Certified Web Components Developer 1.4
JavaFree.org
String é subclasse de Object, logo String é um Object
Isso....
o que acontece é o seguinte Ping.....
O Poliformismo (varias formas) diz que uma uma referencia para um objeto de uma classe pode ser considerada referencia para qualquer sub-classe dele....
Acho que te expliquei bem no outro topico.... tanto para subclasses quanto para interfaces...
O que acontece é que a sobre-carga de métodos ali nunca será utilizada..... ele sempre chama "do maior para o menor" ou seja... "da super classe para a sub classe"
Como String (e qualquer outra classe criada por voce) extende da java.lang.Object ele identifica que voce está passando um object para ele... e entao chama este método....
No caso da necessidade de tratamento da String, poderia ser feito:
volneiPosts:2212
Pessoal deixa essa pra quem está começando...

Qual será a saída do programa?
pingPosts:1739
Object
String
_________________Blog sobre mobilidade
volneiPosts:2212