不用构造方法也可获得实例吗

来源:百度知道 编辑:UC知道 时间:2024/06/23 00:09:06
是不是不用构造方法,也可以将一个类实例化啊?这两者有什么不同啊?

可以的:
Person p=new Person();//通过构造实例
Person a=p;//没有通过构造

通过构造的是通过new来派生类,new Person()开薜新的空间开p对象引用到这个空间。而a则只是单单的引用(或者是指向)罢了。

要得到实例,最终还是需要调用构造方法。只不过我们可以改变改变构造实例的手段,如使用工厂,反射等。

如楼上的例子,不用构造方法仅仅是对实例的引用,不能够开辟新空间。
所以不用构造方法也可以得到实例 但是归根结底 还是要有一个new构造的实例的。String类不在次范围之内

静态工厂也可以。