她与晚风 发表于 2023-4-10 17:08:58

JDBC创建对象

Driver driver = new com.mysql.cj.jdbc.Driver();
我们导入的mysql的jar包不都是class字节码文件吗?( com.mysql.cj.jdbc.Driver)
为什么这里可以new ,new的不应该是java源文件吗

isdkz 发表于 2023-4-10 17:14:56

当你使用 new com.mysql.cj.jdbc.Driver() 创建一个新的 Driver 对象时,实际上是在使用 MySQL Connector/J(一个 JDBC 驱动程序)提供的驱动类 com.mysql.cj.jdbc.Driver。虽然这个类的源代码是由 Java 编写的,但在将源代码编译为字节码文件(.class 文件)后,它会被打包到 JAR 文件中。当你将这个 JAR 文件添加到项目的类路径(classpath)时,你的 Java 程序可以访问并使用这些已编译的类。

所以,虽然你创建的对象来自于一个 .class 字节码文件,但这个文件是由 Java 源代码编译而来的。在 Java 中,无论是源代码还是字节码,只要符合 Java 类的定义,你都可以通过 new 关键字来创建对象。在这个例子中,com.mysql.cj.jdbc.Driver 是一个完整的 Java 类,因此可以使用 new 关键字实例化。
页: [1]
查看完整版本: JDBC创建对象