PreparedStatement.setObject ou PreparedStatement.setString?

Gostaria de saber, quando devo usar um ou o outro, no que afeta em minha aplicação
se eu deixar de lado o tipo de dado que ta sendo buscado, e deixar setObject ou no resultset,
deixar o getObject

?..