Zaregistruje ji, protože načte třídu do paměti a spustí statické inicializátory třídy. Kód statického inicializátoru poté zavolá do rámce JDBC a řekne „Ahoj, jsem ovladač JDBC“ (zavoláním DriverManager.registerDriver
).
Třída ovladače bude například vypadat nejasně takhle:
package com.example.jdbc;
import java.sql.DriverManager;
public class Driver implements java.sql.Driver {
static {
DriverManager.registerDriver(new Driver());
}
// ...implementation...
}
Potom, když uděláte Class.forName("com.example.jdbc.Driver")
, načte třídu a spustí statický inicializátor, který vytvoří instanci a zaregistruje ji pomocí DriverManager
.
Měl bych poznamenat, že jak říká Andreas , moderní ovladače JDBC k tomu nepotřebují.