从另一个类传递方法

我想调用从一个类到另一个类的方法,不知道是否可以在不扩展包含该方法的类的情况下。 我试图导入包,这样我认为该方法应该允许使用,因为它是一个公共方法,但这不是sucesfull ..

试图使用此链接作为参考,但我不明白它(因为是Android的应用程序..)

一个伪代码来举例说明

class 1 class 2 class 2: import package.class 1; class 1.this.method(); -> Error: No enclosing instance of the type class 1 in is acessible in scope 

其他方式可能是,为其他类创建对象,然后在该对象上调用该方法。 像下面的东西。

 new ClassA().yourMethod(); 

您需要来自类1的对象实例来调用该方法,或者如果它不需要实例 – 您可以将其声明为静态,然后您可以编写1.method()。

在java中你有两种主要方法:

  1. Class2 extends Class1 ,然后你可以调用class 1的所有protectedpublic方法。
  2. 在class2中获取class1的实例:

     Class1 c1 = new Class1(); c1.someMethod(); 

如果要在不创建类实例的情况下调用该方法,请将其设置为static

 Class1 { ... public static void method1() {doSomething;} } Class2 { public class2() { Class1.method1(); //should be fine } } 

编辑:如果要在稍有不同的Activities之间传递数据。 通常你会执行类似startActivityForResult()然后检索返回值,或者像这样使用Intents

如何在Android应用程序中的活动之间传递数据?