您的位置:首页 > 编程语言 > Java开发

java newInstance()和new Class()的区别

2014-08-25 17:04 260 查看
初始化一个类,生成一个实例一般会用到 clazz.newInstance()和关键字new两种方式!

1、 clazz.newInstance()

使用clazz.newInstance()需要满足两个条件

1.1、确保该类已加载和连接。

1.2、该类必须要有无参构造函数。

要确保该类已加载和连接可以使用两种方式:

1.1、aClazz=bClazz;

1.2、class aClazz=Class.forName(String name);

这两种方式的区别:aClazz=bClazz是在编译时加载,class aClazz=Class.forName(String name);是运行时加载

 

2、new关键字

使用new可以不用事先加载该类,new就相当于Class.forName()和 clazz.newInstance()两步结合起来

 

总结:

从可伸缩、可扩展,可重用等方面来说,clazz.newInstance()的方式更加灵活,可以降低耦合度!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: