在一个java文件里面写了一个类用来封装数据,怎么在另外一个java文件中调用

我在一个java文件里面写了一个类,然后在这个java文件里面写个方法用来保存数据,但是我另一个java文件里面需要调用这个数据.
例如我要在A.JAVA里面写了一个A类里面有int,String,boolean三个属性,在A.JAVA里面设一个变量A a=new A();然后把a赋值.然后我想在B.JAVA里面调用或者修改这个a的其中一个属性,例如是int值,可以做到吗?或者有没有其他方法可以打到目的?

第1个回答  2012-04-26
可以。

把那个int值定义为static就可以了追问

不是很懂,怎么把那个int定义为static?那个int是在类里面定义的,但是添加static之后就报错.还有能说说弄好之后怎么在另外一个java文件里面调用吗?

追答

class A{
public static int a = 5 ;
}

public class B{

public static void main(String args[]){
A a = new A();
System.out.println("int a now should be 5 ? " + a.a);
a.a = a.a + 2;

A newA = new A();
System.out.println("Int a now should be 7 ?" + newA.a);
}
}

追问

按照你说的不行啊,在A当中要是按照你那样子做的话是会报错啊

追答

你自己的问题吧。。。这个代码没有问题的

要不你就向楼下一样,调用set get方法吧

class A {
private int a;

public int getA() {
return a;
}

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

}

本回答被提问者采纳
第2个回答  2012-04-26
lz现在的想法在java中叫做javaBean:
public class A{
private int a;
private String b;
public void setA(int a){
this.a=a;
}
public int getA(){
return a;
}
public void setB(String b){
this.b=b;
}
public String getB(){
return b;
}
}

public class B{
public static void main(String[] args)
A a = new A();
a.setA(1);
a.setB("abc");
System.out.println("a: "+a.getA()+" b: "+a.getB());

}
第3个回答  2012-04-26
package com.myeclipseide.examples.jsp;

class A{
int i;
String s;
boolean flag;
A a;
public A getA(){
a = new A();
a.i=112;
a.s="sf";
a.flag=false;
return a;
}
}
public class B{
public static void main(String[] args){
A A1 = new A();//new一个对象
A A2 = A1.getA();//get一个已经赋值的对象A2
A2.i=223;//修改 i的值
System.out.println(A2.i);
System.out.println(A2.s);
System.out.println(A2.flag);
}
}
自己亲测 结果是
223
sf
false
第4个回答  2012-04-26
你可以在b中写个方法,传入类型为A类的参数,例如: public void updateA(A a)然后修改传入参数其中的变量
第5个回答  2012-04-26
A a = new A();
a.aa = 3;
相似回答