我现在有两个类:RemindersDAO.java 和 ViewLocalReminders.java。
我正在尝试访问 ViewLocalReminders.java 中的变量,并尝试从 RemindersDAO.java 中调用它。我通过使用 getter/setter 方法组合来做到这一点。但是,由于某种原因,我的变量值在 getter 方法中一直设置为 0。这是代码:
查看LocalReminders.java
public class ViewLocalReminders extends SherlockListActivity {
private long reminderID;
public void onCreate(Bundle SavedInstance) {
reminderID = 16;
setReminderID(reminderID);
}
public void setReminderID(long id) {
id = reminderID;
System.out.println("Reminder ID Value in Setter: " + reminderID);
}
public long getReminderID() {
return reminderID;
System.out.println("Reminder ID Value in Getter: " + reminderID);
}
}
提醒DAO.java
public class RemindersDAO extends SQLiteOpenHelper {
@SuppressWarnings("deprecation")
public Cursor getRowByID(Activity activity) {
String[] from = { _ID, NAME };
ViewLocalReminders viewLocalReminders = new ViewLocalReminders();
long reminderID = viewLocalReminders.getReminderID();
System.out.println("Value of Reminder ID in RemindersDAO: " + reminderID);
}
}
这是我为所有 System.out.printlns 获得的输出:
- Setter 中的提醒 ID 值:16
- Getter 中的提醒 ID 值:0
- RemindersDAO 中的提醒 ID 值:0
很明显,在 setter 和 getter 方法之间发生了一些事情。在 setter 方法中,reminderID 的值是 16,应该是这样。但是,该值在 getter 方法中变为 0。因此,当我在 RemindersDAO.java 中调用 getter 方法时,该值仍然为 0。我在这里做错了什么?谢谢你的帮助!:)