最近问一些基本的问题,居然都不能正常的回答。初学者都对手写的jdbc比较熟悉,对于加载驱动来说,会使用Class.forName("驱动")。此方法。问为什么不使用new,而非的使用Class.forName。这问题好弱智,感觉。如果让其口述jdbc的创建连接的过程。答:
1、首先加载驱动。2、。。。。
自己都说了加载驱动,加载,加载。。。。Class.forName就是加载呀!
类加载机制中,jvm并不会把所有的类都加载,只加载需要的,数据库驱动需要手动加载。
而new方法是创建对象,创建对象时一定会加载类的,并且实例化一个对象。Class.forName只是加载并没有实例化。
ps:创建对象的四种方式:
1、new
2、clone
3、反射
4、序列化和反序列化