SharedPreferences:它是一个类还是一个接口?

SharedPreferences : Is it a class or an interface?

提问人:Stanly T 提问时间:6/16/2016 最后编辑:Hitesh SahuStanly T 更新时间:10/8/2018 访问量:1752

问:

我很困惑,请帮帮我。

Android 开发人员文档说是一个接口,我们也可以在 grepCode 上看到 SharedPreferences 是一个接口SharedPreferences

developers.android 也说是一个类。SharedPreferences

他们写道。

“SharedPreferences 提供了一个通用框架......”

那么,SharedPreferences 是一个还是一个接口

Android 共享首选项

评论

0赞 Ozgur 6/16/2016
它的界面 grepcode.com/file/repository.grepcode.com/java/ext/...

答:

0赞 Sagar Nayak 6/16/2016 #1

Sharedpreferences 是一个接口。您可以在此处看到 Sharedpreferences 将 Interface 作为其父项。

用于访问和修改 getSharedPreferences(String, int) 返回的首选项数据的接口。对于任何一组特定的首选项,所有客户端都共享此类的单个实例。

如需进一步参考,您可以查看答案。

评论

0赞 Janki Gadhiya 6/16/2016
他已经有了这个链接,他只需要了解它是什么。一个链接说它是一个接口,另一个链接说它是一个
0赞 Stanly T 6/16/2016
第二个链接显示“SharedPreferences 类提供了一个通用框架,允许您保存和检索原始数据类型的持久键值对。这似乎是一个错误。
2赞 Neji 6/16/2016 #2

嗯,SharedPrefs 是一个接口。它由 SharedPreferencesImpl 实现,它为我们提供了文档中关于共享首选项的功能。尽管 SharedPreferencesImpl 主要不在文档中,但 SharedPreferences 一直是该功能的代言人。

5赞 Rehan 6/16/2016 #3

文档没有错,但可能有点令人困惑。

如果看到代码,就会发现 SharedPreferences 实际上是一个接口。但正如你提到的,这里它指的是它的实现作为类,实际上是,你可以在这里查看它的实现。当你调用方法时,它实际上返回的对象是一个实现接口的类。SharedPreferencesImplgetSharedPreferences()SharedPreferencesImplSharedPreferences

2赞 Cenxui 6/22/2016 #4

SharedPreferences 是接口,但作为类实现。这个概念是抽象工厂,是一种设计模式。SharedPreferences 的声明是 interface,但 getSharedPreference() 返回一个实现 SharedPreferences 接口的类。