В соответствии с javadoc метод createStatement()
создает экземпляр Statement
для отправки операторов SQL в базу данных.Как метод createStatement() возвращает объект Statement?
Statement
является interface
под пакетом java.sql
, и я понимаю, что невозможно создать экземпляр интерфейса в Java.
Тогда как это работает? В источнике я нашел это, только не понимаю.
/**
* Creates a <code>Statement</code> object for sending
* SQL statements to the database.
* SQL statements without parameters are normally
* executed using <code>Statement</code> objects. If the same SQL statement
* is executed many times, it may be more efficient to use a
* <code>PreparedStatement</code> object.
* <P>
* Result sets created using the returned <code>Statement</code>
* object will by default be type <code>TYPE_FORWARD_ONLY</code>
* and have a concurrency level of <code>CONCUR_READ_ONLY</code>.
* The holdability of the created result sets can be determined by
* calling {@link #getHoldability}.
*
* @return a new default <code>Statement</code> object
* @exception SQLException if a database access error occurs
* or this method is called on a closed connection
*/
Statement createStatement() throws SQLException;
conn.createStatement() не означает, что есть код, как "новое заявление() существует в методе. – Loc
Функция createStatement возвращает ссылку на объект, реализующий интерфейс Statement. – DwB
Связанный: http://stackoverflow.com/questions/7550612/in-simplest-terms-what-is-a-factory/ – BalusC