java - 从另一个类访问类私有(private)成员

标签 java android class contract

我是编程新手,刚开始学习 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_ENTRIESSQL_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/

相关文章:

java - 有类似 while 开关之类的东西吗?

java - 字符串到日期问题

android - 如何在屏幕上加载 Widget 之前打开一个新 Activity ,Android?

android - 使用 Phonegap HTML5 在 Android 上调用 native 函数

java - 在java中传递接口(interface)类型(不实现类类型)作为参数

java - 如何让 Maven 依赖于运行时类路径而不是测试类路径?

java - Hibernate 有没有办法在不先加载整个实体对象的情况下获取实体加载的 PersistentCollection?

android - 在现有的 android 调用应用程序中添加一个额外的按钮?

php - 如何更改 PHP 中第一个回显结果的类?

python - 如何防止将变量重新分配给同一类的对象以保留以前的数据?