我在多个类上使用getter和setter访问变量时遇到问题。我抬起头this one,但我太困惑了。
我有3个类型的用户:mysql表中的Admin (Position No: 0
,Manager (Position No: 1)
,Clerk (Position No:2)
。
我有SeeReportsAndFeedbacks
类。我想显示所有报告,方法是选择position_no = 0的行,其中1代表管理员和经理,2代表职员。 if语句已经完成了。
所以店员只能看到使用position_no=2
的报告
经理只能看到带有position_no=0
和1的报告
管理员只能看到带有position_no=0
和1
请帮助我。我在这里呆了很长时间。我的getter设置程序有什么问题?
如果我在Login_Form
上设置,并在girisyap()
函数中调用get会显示正确,但是如果我在名为SeeReportsAndFeedbacks
的其他类中调用get则会显示来自{{1}的第一个初始值},而不是Users () constructor
的{{1}}函数上的设置值。
girisyap()
值将mysql db中的position_no作为字符串,Login_Form
值将if语句的字符串解析(转换为int)
用户类别
tip
SeeReportsAndFeedbacks类(我删除了与此问题无关的函子或其他GUI东西。
new1
Login_Form
public class Users {
private int id;
private String username;
private String fullname;
private String password;
private String phone;
private String gender;
private byte[] image;
private int position_no;
public Users () {
setPno(1); //firsst initialize
//getFullname();
}
public Users (int uid,String uname,String fname,String upassword,String uphone,String ugender,byte[] uimage,int pno){
this.id = uid;
this.username = uname;
this.fullname = fname;
this.password = upassword;
this.phone = uphone;
this.gender =ugender;
this.image =uimage;
this.position_no = pno;
}
public Users (int pno){
setPno(pno);
}
public int getPno(){
return position_no;
}
public void setPno(int pno){
this.position_no = pno;
}}