一般性都是一个java文件里写一个类的,Java规定一个.java文件中只能存在一个public 的class。当然inner class或者只与文件中主类有联系的class是可以的,否则是不推荐的。要调用另一个类和方法,就应该先创建那个类的实例,然后通过那个类的实例来调用那个类的方法。前提是那个类的构造方法和要调用的方法都应该声明为public。
public class a {
  String s;  public a() {
    s="";
  }  public void setS(String newS) {
    s=newS;
  }  public String getS() {
    return s;
  }  public static void print() {
    System.out.println("haha");
  }
}
比如你写了这么一个类a,如果你要调用a里的getS(),你就要
a test=new a();
String getIt=test.getS();另外你还可以看见public static void print() 这个方法
声明为static 的方法无需实例可以直接调用
a.print();即可

解决方案 »

  1.   

    忘了那个String s;
    推荐声明为private的Private String s;
      

  2.   

    设有一个文件c:\path\wasCalled.java,a中有名为wasCalled的类及其方法function1()。 
    public class wasCalled {

    public wasCalled() {
    // TODO: Add your code here
    }
    public void function1() {
    System.out.println("Hello");
    } public static void main(String[] args) {
    // TODO: Add your code here
    }
    }
    另一个是c:\path\testcall.java, 则testcall.java中调用方法为:package myprojects.testcall;import wasCalled;public class Testcall {

    public Testcall() {
    }
    public testcallfunction() {
    wasCalled wc = new wasCalled();
    wc.function1();
    }
    public static void main(String args[]) {
    System.out.println("Starting Testcall...");
    Testcall Testcall1 = new Testcall();
    }
    }
      

  3.   

    只要另一个类在环境变量的classpath中,就可以直接调用,跟在同一个文件中没有区别。