Getter和Setters不工作? [英] Getter and Setters not working?
问题描述
我现在有两个课程:RemindersDAO.java和ViewLocalReminders.java。
I've got two classes right now: RemindersDAO.java and ViewLocalReminders.java.
我正在尝试访问ViewLocalReminders.java中的变量我试图从RemindersDAO.java中调用它。我是通过使用getter / setter方法组合来做到这一点的。但是,出于某种原因,我的变量值在getter方法中保持设置为0。以下是代码:
I'm trying to get access to a variable that's in ViewLocalReminders.java and I'm trying to call it from RemindersDAO.java. I'm doing this by using the getter/setter method combo. However, for some reason, my variable value keeps getting set to 0 in the getter method. Here's the code:
ViewLocalReminders.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);
}
}
RemindersDAO.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:
This is the output that I'm getting for all my System.out.printlns:
- Setter中的提醒ID值:16
- Getter中的提醒ID值:0
- Reminders中的提醒ID值DAO:0
很明显,在setter和getter方法之间发生了一些事情。在setter方法中,reminderID的值是16,应该是这样。但是,getter方法中的值为0。因此,当我在RemindersDAO.java中调用getter方法时,该值仍为0。我在这做错了什么?谢谢你的帮助! :)
So obviously, something's happening between the setter and getter methods. The value of reminderID is 16 in the setter method, the way it should be. However, the value goes to 0 in the getter method. Consequently, the value is still 0 when I call the getter method in RemindersDAO.java. What am I doing wrong here? Thanks for your help! :)
推荐答案
感谢您的帮助。虽然我遵循了你们所有人的建议,但我无法弄清楚为什么我的吸气剂和制定者不能正常工作。我猜它与remderID作为构造函数的参数被接受的事实有关。无论哪种方式,我通过使用Android的Bundle解决了我的问题,并通过它将我的变量从一个活动转移到另一个活动。
Thanks for all your help you guys. I wasn't able to figure out why my getters and setters weren't working, even though I followed all of your guys' suggestions. I'm guessing it has something to do with the fact that reminderID is taken in as an argument of a constructor. Either way, I solved my problem by using Android's Bundle and transferring my variables from one activity to another through that.
再次感谢您的帮助! :)
Again, thanks for all your help! :)
这篇关于Getter和Setters不工作?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!