-1

我在一个包中有我的 getter 和 setter 我正在将值设置在不同包中的类中,并且我试图从再次位于单独包中的类中获取值。但我得到零值请帮助我解决这个问题。

    package com.company.pojo;

    public class ExamplePojo {


private int x;
private int y;
private int z;

private String a;
private String b;
private String c;

public int getX() {
    return x;
}
public void setX(int x) {
    this.x = x;
}
public int getY() {
    return y;
}
public void setY(int y) {
    this.y = y;
}
public int getZ() {
    return z;
}
public void setZ(int z) {
    this.z = z;
}
public String getA() {
    return a;
}
public void setA(String a) {
    this.a = a;
}
public String getB() {
    return b;
}
public void setB(String b) {
    this.b = b;
}
public String getC() {
    return c;
}
public void setC(String c) {
    this.c = c;
}

}

我设置值的另一个包是

    package com.company.function;

    import com.company.pojo.ExamplePojo;

    public class SetValue {

ExamplePojo EP = null;

public void setValue(){

     EP = new ExamplePojo();

    EP.setX(10);
    EP.setY(20);
    EP.setZ(30);
    EP.setC("Saurabh");
    EP.setA("mahaesh");
    EP.setB("Kanni");
}

}

在第三个包中,我试图通过它返回 0 的 getter 获取值。

    package com.company.Execute;

    import com.company.function.SetValue;
    import com.company.pojo.ExamplePojo;

    public class Main {



public static void main(String[] args) {

    SetValue St = new SetValue();
    St.setValue();
    ExamplePojo EP = new ExamplePojo();

    System.out.println(EP.getX());
    System.out.println(EP.getY());
    System.out.println(EP.getZ());
    System.out.println(EP.getA());
    System.out.println(EP.getB());
    System.out.println(EP.getC());
}

}

输出是

          0
          0
          0
          null
          null
          null
4

2 回答 2

4

问题是您有两个单独的对象,St.EP并且EP. 您更改一个,然后检查另一个:

SetValue St = new SetValue();       //
St.setValue();                      // this changes St.EP
ExamplePojo EP = new ExamplePojo(); //
System.out.println(EP.getX());      // this examines EP
于 2013-03-02T11:52:49.710 回答
1

参考@NPE 所说的,您的问题是您正在管理两个不同的对象。

这是一种可能的方式来做你正在寻找的......

调整:

package com.company.function;

import com.company.pojo.ExamplePojo;

public class SetValue {

  public ExamplePojo setValue(){

    ExamplePojo EP = new ExamplePojo();

    EP.setX(10);
    EP.setY(20);
    EP.setZ(30);
    EP.setC("Saurabh");
    EP.setA("mahaesh");
    EP.setB("Kanni");

    return EP;
  }

}

改变:

SetValue St = new SetValue();
ExamplePojo EP = St.setValue();
于 2013-03-02T11:58:02.960 回答