ResultSet is an interface, How does it support rs.next()?

Showing Answers 1 - 6 of 6 Answers

NAVEEN

  • Jun 18th, 2007
 

Question:
If Result Set is an interface, then why can we call methods like
next(), isLast()
etc. without defining the method body anywhere in the program? As I understand it, in an interface, methods are only declared but not defined.

Answer:
Even though an interface does not implement any of its methods, a class that implements an interface will implement the interface's methods. When you obtain a reference to a ResultSet through a JDBC call, you are getting an instance of a class that implements the ResultSet interface. This class provides concrete implementations of all of the ResultSet methods.

Interfaces are used to divorce implementation from, well, interface. This allows the creation of generic algorithms and the abstraction of object creation. For example, JDBC drivers for different databases will return different ResultSet implementations, but you don't have to change your code to make it work with the different drivers.

Give your answer:

If you think the above answer is not correct, Please select a reason and add your answer below.

 

Related Answered Questions

 

Related Open Questions