静态变量之单例模式
单例模式
我们从一个例题入手
请用静态成员相关知识实现
一个类对象,在整个应用程序的生命周期中,有且仅有一个该对象的存在,不能在外部实例化,直接通过该类类名就能够得到唯一的对象
1 |
|
这个程序非常有意思,这个就是单例模式的一个比较简单的形式了。
我们先定义一个私有的构造无参函数,让它能够做到不能在外部实例化;接着,我们在类里面定义一个静态成员t,这个静态成员就是一个Test类了,并且是唯一的。
注意!!此时虽然t不能在外部被赋值了
1 |
|
但是,还是可以被赋值为空的!!!!
1 |
|
因此,我们还需要做到能够得到却不能被改变,因此可以想到成员属性的用法(get)
我们通过成员属性,对t实现了保护,之后,只要通过属性,就可以实现Test.T呼出一个唯一的静态成员类t了。此时Test.T.testInt=10.
这个可以好好看看,真的很有意思!
静态变量之单例模式
https://gaster44.github.io/2023/12/21/静态变量之单例模式/