猿问

关于private的问题,请问如何定义private构造函数?

如题,这种用法在实际应用中有什么用?
工厂类又是如何实例化该类的

倚天杖
浏览 263回答 2
2回答

函数式编程

单例模式的构造方法必须是privatepublic class Singleton {private Singleton(){ }//在自己内部定义自己一个实例,是不是很奇怪?//注意这是private 只供内部调用private static Singleton instance = new Singleton();//这里提供了一个供外部访问本class的静态方法,可以直接访问public static Singleton getInstance() {return instance;}}工厂模式:根据工厂模式实现的类可以根据提供的数据生成一组类中某一个类的实例,通常这一组类有一个公共的抽象父类并且实现了相同的方法,但是这些方法针对不同的数据进行了不同的操作。首先需要定义一个基类,该类的子类通过不同的方法实现了基类中的方法。然后需要定义一个工厂类,工厂类可以根据条件生成不同的子类实例。当得到子类的实例后,开发人员可以调用基类中的方法而不必考虑到底返回的是哪一个子类的实例。

慕少森

定义为private在实现Singleton时很有用,protected也可以"工厂类又是如何实例化该类的"只有给该类定一个成员函数来返回一个实例指针.然后工厂类调用该成员函数.实现实例化.
随时随地看视频慕课网APP

相关分类

Java
我要回答