什么时候在Swift中创建一个类作为Singleton?
问题描述:
我做了一个包含所有实用方法的类。因此,我没有将它作为单例,而是将方法标记为static
,并通过ClassName.methodName
访问这些方法,而不需要实例化。 这种方法行吗?什么时候在Swift中创建一个类作为Singleton?
答
只是认为这是一个单身是为了使用,以确保只有一个实例存在给定类,并有一个全球性的接入点,以该实例。
我认为将所有实用功能标记为静态类是一种很好的方法,因为如您所述,您将需要使用ClassName.methodName
才能使用它们。
此外,根据你想要什么来实现,并通过this link提供的信息,我想重申的是具有静态方法的类是最好的选择。
如果我不实例化,内存不会被分配在堆上。与上面提到的方式使用内存分配相比,它如何?如果我不创建实例,内存如何分配? –
@PiyushVaish,根据[this](http://stackoverflow.com/questions/7673359/static-method-memory-allocation)静态字段存储在堆上的一个特殊对象上,但你无法访问它就像你创建一个类的实例一样。 – lmiguelvargasf