JAVA中的一个关于类的小问题

来源:百度知道 编辑:UC知道 时间:2024/05/31 16:33:22
有两个文件,包含main的文件中定义了一个类:它有一个public的方法,并且在main中创建了一个实例对象a,在另一个文件中也有一个类,我怎么在这个类中调用a的那个方法啊?
程序是:
文件A.java中
public class A{
public static void main(String[] args) {
A a=new A();
}
public void f(){
System.out.println("aaa");
}
}

文件B.java中:
public class B{
a.f()
}
这样会报错,就是如何调用a.f()??? 谢谢!

除了静态方法可以使用类名来直接调用,java方法都是通过对象来调用的,在B类中使用对象a的方法,有一个前提你必须拿到a对象的引用。现在问题就是怎么拿到a对象的引用了,你可以在B类的构造函数中把a引用拿过来。
public class B(A a){
a.f()
}
这样就可以了,当然也有其他方法,这个是最直观的了!

文件A.java中
public class A{
public static void main(String[] args) {
A a=new A();
B b=new B();
b.f(a);
}
public void f(){
System.out.println("aaa");
}
}

文件B.java中:
public class B{
public void f(A a){
a.f();
}
}

切记一个项目中只能有一个 public static void main(String[] args) {
}
public class A{

public static void f(){
System.out.println("aaa"); //定义静态的方法在主函数调用的是很就不用实列化对象了
}
}

import a;
public class B{
public static void main(String[] args) {
a.f(); //直接使用它的类名调用静态方法,如果不是静态方法就要实例化