Rozwiązanie Twojego problemu jest w rzeczywistości bardzo proste, dzwonisz do Statement.executeQuery(String) kiedy chcesz zadzwonić PreparedStatement.executeQuery() -
this.stmt = con.prepareStatement(sql); // Prepares the Statement.
stmt.setInt(1, randNum); // Binds the parameter.
// return this.stmt.executeQuery(sql); // calls Statement#executeQuery
return this.stmt.executeQuery(); // calls your set-up PreparedStatement