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í.