通常,需要使用以下命令创建对象:
Object object = new Object();
但是,String类不是这种情况。 现在我正在使用Firebase数据库。他们不使用 new ,而是使用。 getInstance()。所以问题是,我怎么知道我是否需要使用 new 来创建一个对象?
提前致谢。
答案 0 :(得分:1)
有两种方法可以实例化一个类。
Using
新关键字,通过调用公共构造函数:new MyClsss()
。Without using
新关键字。这种情况表明我们使用的是Singleton
或Factory
模式。在Singleton模式中,用于获取对象的类的名称与该对象的类的名称相同。例如,Connection con = Connection.getInstance();
因此,在Firebase中,使用的模式是Factory
模式。因此,要真正了解如何实例化类,首先需要阅读该类的Java文档。但出于学习目的,我强烈建议您阅读有关在Java和设计模式中创建新对象的更多信息。
factory method pattern
是一种在Java中封装对象创建的方法。如果没有工厂方法,我们只需直接调用类的构造函数,如上所述MyClsss myClsss = new MyClsss();
。该类的构造函数被标记为私有,因此除了从类内部调用之外,它们不能被调用。工厂方法标记为static
,因此可以在不创建类对象的情况下调用它。因此,工厂方法返回的对象基本上是在该类中创建的。