我是编程新手,刚开始学习 Java 和 Android。我想创建一个数据库,所以我遵循了官方文档:https://developer.android.com/training/basics/data-storage/databases.html
我的问题是,在 Contract 类上,创建和维护数据库的成员是私有(private)字符串(SQL_CREATE_ENTRIES 和 SQL_DELETE_ENTRIES)。在另一个文件上定义 DBHelper 类,我只是无法访问该成员在文档中出现的方式(FeedReaderDbHelper 类只是使用它们,就好像它们在它的范围内一样)。所以 Android Studio 只是把这句话变成红色并说:“无法解析符号”。
我应该在这里做什么?我还阅读了不建议将 setter/getter 用于 Android 的文档。
最佳答案
将SQL_CREATE_ENTRIES
和SQL_DELETE_ENTRIES
放在DBHelper
类中。
来自文档,
"A contract class is a container for constants that define names for URIs, tables, and columns."
只有数据库的模式应该放在那里。与更改数据库有关的逻辑应放在 DBHelper
类中。
关于java - 从另一个类访问类私有(private)成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38545253/