你是想同一个包下类B里的一个方法希望能取得这个属性已设置好的对象的数据,对其进行操作,然而你重新创建了一个A的对象,结果发现没有取到已经设置好的值。
原因是这样的,因为呢,你没有将这个变量设置为static,所以这个变量并不是A类所有对象共有的变量,针对普通的类的变量,是每次新建一个对象时,都会拷贝一份新的。所以你在类B中获取的变量就是新的。
按照你的需求描述,我们可以进行如下的操作
在B的某个方法的参数中,将A类的某个对象的引用传过来,直接使用这个引用来操作已经创建好的A对象。
代码如下
- Class B{
- ...//你的部分代码
- //假设此处只是需要获取A的field1的值,//打印到控制台
- public void showAField(Class A){
- System.out.println(A.getField1());
- }
- ...//你的部分代码
- }
复制代码
希望能够帮到你! |