谁能详细解释一个Class类的forName方法

roastangle 2003-10-16 08:26:14
我对这个类的理解是发回字符串相对应类的对象一般用于与本程序同包或已import的类不知我理解的对不对?在数据库编程中常常用Class.forName("oracle.jdbc.driver.OracleDriver");来声明要用的数据库的接口,可是这样声明一下就可以了吗??他返回的对象给了谁吗?为什么这样声明一下下面的语句
Connection con=DriverManager.getConnection("jdbc:oracle:oci8:@DB","scott","tiger");就会知道用ORACLE提供的接口了呢(class12)毕竟Class.forName返回的结果没有谁来接收吗!谁来解释一下谢谢。:)
...全文
50 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
roastangle 2003-10-18
  • 打赏
  • 举报
回复
谢谢!!
songbo_pp 2003-10-16
  • 打赏
  • 举报
回复
Class.forName("oracle.jdbc.driver.OracleDriver");相当于执行了 new oracle.jdbc.driver.OracleDriver(),这个类在构造函数里在DriverManager里注册,DriverManager里有一个静态hash表,以保证各种驱动程序都是唯一。
实际上是静态方法。

62,615

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧