【问题标题】:Calling another method into my class在我的课堂上调用另一种方法
【发布时间】:2011-12-13 21:03:30
【问题描述】:

我想实现一个我在项目包的另一个类中使用的方法。

我想添加方法的类没有扩展方法来源的类。

我试过了:

MyMethod p = new MyMethod;

当我这样做时,我得到'无法解析符号'MyMethod'

【问题讨论】:

  • 它应该是MyMethod p = new MyMethod(); 如果它是一个方法那么可能是MyClass p = new MyClass(); 然后p.myMethod(args);
  • 我会认为错误是语法错误,因为在最后一个分号之前缺少参数列表。
  • 所以我需要导入整个类,然后使用方法。

标签: java


【解决方案1】:

可能是方法是私有的。你不能调用其他类的私有方法。

这很简单:

Class A{

  public void methosAA(){

  }

}


Class B{

A a=new A();

 public static void main(){
    a.methosAA();
}

}

【讨论】:

    【解决方案2】:

    声明 我的方法 p = 新的我的方法

    语法不正确。如果 MyMethod 是一个类,并且你想创建它的一个实例来调用它的任何方法:

    那么正确的实例化语法是:

      MyMethod p = new MyMethod(); 
    

    然后你需要实现方法并用新创建的实例p调用它。

    如果您要从不同包中存在的不同类调用方法,您首先必须在 MyMethod 类中导入该类,然后必须创建该类的实例,或者使用该类进行强制转换才能能够调用该方法。

    【讨论】:

    • 酷,所以你不能只在另一个类中创建方法的实例,而是需要先创建该类的实例,然后初始化方法。
    • 你需要先创建该类的一个实例,然后初始化方法....它不是在初始化一个方法,它调用一个方法,否则你是正确的。
    • “你不能只创建一个方法的实例”:这是一个错误的陈述。实例总是从有效类创建的,而不是从方法创建的。
    • 废话,得到一个空指针并指向外部类中的方法,我给它 args 所以不知道怎么回事。
    • @user979587:然后读取堆栈跟踪并检查它提到的行。如果您找不到问题,请发布堆栈跟踪并将我们指向它提到的行。
    猜你喜欢
    • 2014-09-18
    • 1970-01-01
    • 2019-01-03
    • 1970-01-01
    • 2018-10-03
    • 2015-03-21
    • 2016-08-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多