如果另一个类的变量是静态变量,用 类名.变量名 调用
如果是public的变量,先创建另一个类的对象,用 对象名.变量名 调用
如果是private的变量,用set、get方法操作对象
还可以利用反射机制操作变量
原则上来说,如果两个类没有关系,那么必须把变量设为public才可以访问。
另外按照安全设置,protected的变量可以被自类访问到。
还有一个情况,由于很多人都会忽略设范围。那么把类放在同一个package中,就可以访问变量了。
以上的方式都是正统的访问,如果对方设的很规范,而你又特别希望访问。那么可以使用java的反射机制,可以访问私有变量的。
A类想调用B类中的变量c:给A一个属性,属性类型是B,然后再对B进行封装,用A对象调用B封装后的方法,然后就可以访问c了
代码:
public class B {
private int c;
public int getC() {
return c;
}
public void setC(int c) {
this.c = c;
}
}
public class A {
private B b;
public B getB() {
return b;
}
public void setB(B b) {
this.b = b;
}
public static void main(String[] args) {
A a=new A();
a.getB().getC();
}
}
比如A类调用B类中的变量C
如果C是private的,那么你要给C做set和get方法,这样通过实例化B,再B.getC()就可以得到变量C
如果不想写方法,直接将C设置成public,B.C来访问
如果那个变量是静态的,就用类名+变量名访问,如果该变量不是静态的,那就要通过参数传递将它传过来使用了,还是静态方便