java 两个类文件中 变量怎么互相访问

我有两个类文件Jipu.java,SampleAction.java在同一个包中。
怎么让他们相互访问?
我要直接在Jipu.java,使用SampleAction.java的变量的话如:SampleAction.this.a0=1(a0是SampleAction.java的一个变量)
提示没任何外部实例可以访问。为什么?要怎么访问

方法一:
可以把要访问的类在此类中实例化,通过new之后就可以调用实例化的属性和方法。
示例代码:
public class A1 {
public String str = "Hello World !";
}

public class B2 {
public static void main(String[] args){
A1 a = new A1();
System.out.println(a.str);
}
}
PS:必须在B2类中实例化A1,才可以访问它的属性。

方法二:
可以使用static静态变量,直接调用要访问类的属性和方法。
示例代码:
public class A1 {
public static String str = "Hello World !";
}

public class B2 {
public static void main(String[] args){
System.out.println(A1.str);
}
}
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-10-13
使用get/set方法来访问
处于安全考虑,不建议把类中的变量设置为public,推荐private,然后用get/set方法来访问。比如
class A{
private int a;

public void setA(int a){
this.a = a;
}
public int getA(){
return this.a;
}
}

这样,在B类中如果访问A的变量
class B{
pulibc accessA(){
//实例化A
A a = new A();
a.setA(1); //给A类的a赋值。
int b = a.getA(); //获取A类的a的值
}

}本回答被提问者采纳
第2个回答  2008-05-14
class A {
int index = 0;
String name = "test";
}

class B {
public B() {
A a = new A();
System.out.println("index: " + a.index);
System.out.println("name: " + a.name);
}
}
相信你能看得懂这个,java中有一种特殊的访问性即同包访问性(这个是默认的访问性).
第3个回答  2008-05-12
要在一个类中访问另外一个类中的变量要确保几点:
1.要在访问的类中导如被访问的类
2.(同包条件下)被访问的类的属性必须不能是private

举个例子
public class A{
public int a=0;
public static int c=0;//static类型数据

}

public class B{

A a=new A();
int b=a.a;//调用

int d=A.b;//static类型数据调用可以不用实例

}

一般的类中的属性都是设置为private或者protected的,在设置各属性相对应的get set方法.而不是直接调用属性的(除非特殊情况).楼主慢慢领会吧
第4个回答  2008-05-12
int a = 1;
int b = 2;
a = a+b;
b = a-b;
a = a-b;
相似回答