我很困惑,请帮助我。
Android developers documentation说SharedPreferences
是接口,我们也可以在grepCode上看到SharedPreferences是接口。< / p>
但developers.android也说SharedPreferences
是类。
他们写道。
“SharedPreferences 类提供了一个通用框架......”
那么, SharedPreferences 是类还是接口?
答案 0 :(得分:4)
文件没有错,但可能有点令人困惑。
如果您看到代码,您会看到SharedPreferences
实际上是一个界面。但正如你所提到的,here
它将其实现称为实际为SharedPreferencesImpl
的类,您可以查看其实现here。当您调用getSharedPreferences()
方法时,它实际上返回SharedPreferencesImpl
的对象,这是一个实现SharedPreferences
接口的类。
答案 1 :(得分:2)
嗯,SharedPrefs是一个界面。它由SharedPreferencesImpl实现,它为我们提供了doc关于共享首选项的功能。虽然SharedPreferencesImpl主要不在doc中,但SharedPreferences一直是功能的代表。
答案 2 :(得分:2)
SharedPreferences是接口,但是作为类实现。这个概念是抽象工厂,一种设计模式。 SharedPreferences的声明是接口,但getSharedPreference()返回一个实现SharedPreferences接口的类。
答案 3 :(得分:0)