jdbc这一套规范被数据库厂商实现了,厂商中实现了这些接口
例如:createStatement() 他在Connection这个接口中,他已经被数据库厂商实现并且重写了 实际上就是多态中的接口指向实现类而sta实际上是实现类对象。
下面举个列子:我们定义一个接口和实现类及测试类
void close();
Test createTest();//返回Test
}
public class sxl implements Test {
@Override
public void close() {
System.out.println("我是一只小老虎");
}
@Override
public Test createTest() {
return new sxl();
}
}
这个类实现了Test接口并且重写了里面的方法可以看见createTest()这个实现返回的是
Test的实现类
public class Mytest {
public static void main(String[] args) {
sxl s = new sxl();
Test t = s.createTest();
System.out.println( t );
}
}
Main方法中产生了实现类对象并且调用的createTest()他的接收者是Test接口
这就是多态中接口指向实现类 打印t的结果为: test.sxl@dc8569 (test这个test是sxl这个类的包) 可以看出是实现类的引用。希望对你有所帮助!!!