java中怎样在一个类中访问同一个包中的另一个类定义的变量?

我想在一个类中定义几个变量,如image对象之类的,然后在同一个包中的所有的类中都可以使用这个变量,请问这样可以实现么?谢谢!

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;//返回B对象,用来拿到B对象中的变量
}
public void setB(B b) {
this.b = b;
}
public static void main(String[] args) {
A a=new A();
a.getB().getC();//得到另一个类的变量
}
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2008-07-21
可以的,把你说的image类中的变量声明成public的就可以直接访问,不过建议还是写成javabean的形式,用get或set方法进行访问本回答被提问者采纳
第2个回答  2008-07-21
其实你这个问题问的就是java里边变量或者方法的访问权限问题。
java中, 有以下几种访问权限:
private: 私有, 只有这个类自己才能访问
package-private:包私有, 只有和这个类在同一个包中的类才能访问
protected:保护, 只有继承于它点类和它自己能访问
public:公开, 所有人都能访问。

如果你想只能是同一个包的其他类能访问, 那就声明成package-private的吧,也就是前边不加任何东西,
比如:

class Foo{
void myFun(){...}//package-private, default
public myFun1(){...}//public
}
第3个回答  2008-07-22
当然可以,在同一个包中只要是声明成public的都可以直接访问调用其中的定义的变量和方法
第4个回答  2008-07-21
同一包中?那只要不是private 的变量,都可以通过声明对象来访问啊.举个例子吧.
class A{ int num=100;}
class B{ A a=new A(); System.out.println(a.num);}
相似回答