java数据库连接为何用class.forName().他和new有什么区别。
来源:互联网 发布:java泛型extends 编辑:程序博客网 时间:2024/05/17 22:27
在Java开发特别是数据库开发中,经常会用到Class.forName( )这个方法。通过查询Java Documentation我们会发现使用Class.forName( )静态方法的目的是为了动态加载类。在加载完成后,一般还要调用Class下的newInstance( )静态方法来实例化对象以便操作。因此,单单使用Class.forName( )是动态加载类是没有用的,其最终目的是为了实例化对象。
private static final Log LOG = LogFactory.getLog(ProxoolDriver.class);
static {
try {
DriverManager.registerDriver(new ProxoolDriver());
} catch (SQLException e) {
System.out.println(e.toString());
}
}
现在可以看出,newInstance()实际上是把new这个方式分解为两步,即首先调用Class加载方法加载某个类,然后实例化。 这样分步的好处是显而易见的。我们可以在调用class的静态加载方法forName时获得更好的灵活性,提供给了一种降耦的手段。
- java数据库连接为何用class.forName().他和new有什么区别。
- java数据库连接为何用class.forName().他和new有什么区别。
- java Class.forName和new 的区别
- 通过Class.forName("xxx").newInstance()和通过new 得到对象有什么区别
- 【JAVA】Class.forName用法以及和new的区别
- Class.forName()、Class.forName().newInstance() 和 New 区别
- Class.forName()和new和Instantiation()区别
- Class.forName new 区别
- new和Class.forName()的区别
- class.forName() 和new
- JAVA Class.forName和.class区别
- Class.forName有什么作用
- Class.forName() 与new 区别
- Class.forName() 与new 区别
- Class.forName() 与new 区别
- class.forname()和new的区别和作用
- MySQL JDBC驱动 - Class.forName和java.sql.DriverManager.registerDriver(new Driver())的区别
- .class、Class.forName()、Class.forName().newInstance() 、New 区别!
- LINUX的常用命令
- 微软企业库4.1学习笔记(一)开篇乱弹
- 经典C/C++面试题
- HDU 1300
- LINUX系统的目录介绍
- java数据库连接为何用class.forName().他和new有什么区别。
- 闲话微博
- Emacs org-mode
- eMMC的前世今生
- 超图数据导入ArcGIS的既定系统
- 匿名对象的使用方式
- shell中使用sort和uniq实现两文件的并集,交集和差集
- asp/ajax实现进度条方案
- 微软企业库4.1学习笔记(二)各功能之间的依赖关系以及对象创建