Problemas com tipo de retorno do método

Este é um método que faz uma consulta em banco e retorna um objeto com os valores encontrados no banco.

public Object select (Object o){
     consulta = conn.prepareStatement("select * from usuario where nome = ?");
      if(o instanceof Usuario){
         try{
	Usuario user = (Usuario) o ;
	consulta.setString(1,user.getNome());
	ResultSet rs = consulta.executeQuery();
	Usuario usuario = new Usuario();
	if(rs.first()){
	    usuario.setNome(rs.getString("nome"));
	    usuario.setNome(rs.getString("senha"));
	}
	rs.close();
	return usuario;
	}
	catch(Exception e){
	   e.printStackTrace(System.out);
	   return null;
      }
}

Está me dando o seguinte erro: “This method must result a return of type object”
Se alguém tiver alguma idéia, me ajude.
Obrigado

Se “o instanceof Usuario” for false, vc retorna o que? :slight_smile:

[ver mensagem acima, eu não li direito seu código :oops:]

O seu statement de return está dentro do try e, portanto, pode não ser executado (caso haja erro antes dele).

Vc pode mandar retornar o objeto depois do catch ou adicionar um return null depois do catch, ao final do método (lembrando que esse null seria em caso de erro)