Android从另一个类调用一个方法

我知道这个问题重复,但我无法在互联网上find答案。

我想调用另一个的方法。

我有Class1和Class2。

在类2中我有这样的方法:

public void UpdateEmployee(){ //some code } 

我想从Class1中调用该方法。

感谢您的任何答案。

– – 编辑 – –

 final Button btnUpdate = (Button)findViewById(R.id.btnUpd); btnUpdate.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { Employee updEmple = new Employee(); updEmple.UpdateEmployee(); } }); 

—- logcat的—

 05-28 16:30:44.030: E/AndroidRuntime(25198): FATAL EXCEPTION: main 05-28 16:30:44.030: E/AndroidRuntime(25198): java.lang.NullPointerException: println needs a message 05-28 16:30:44.030: E/AndroidRuntime(25198): at android.util.Log.println_native(Native Method) 05-28 16:30:44.030: E/AndroidRuntime(25198): at android.util.Log.v(Log.java:116) 05-28 16:30:44.030: E/AndroidRuntime(25198): at and.net.Employee.UpdateEmployee(Employee.java:77) 05-28 16:30:44.030: E/AndroidRuntime(25198): at and.net.AndActivity$2.onClick(AndActivity.java:51) 05-28 16:30:44.030: E/AndroidRuntime(25198): at android.view.View.performClick(View.java:2485) 05-28 16:30:44.030: E/AndroidRuntime(25198): at android.view.View$PerformClick.run(View.java:9080) 05-28 16:30:44.030: E/AndroidRuntime(25198): at android.os.Handler.handleCallback(Handler.java:587) 05-28 16:30:44.030: E/AndroidRuntime(25198): at android.os.Handler.dispatchMessage(Handler.java:92) 05-28 16:30:44.030: E/AndroidRuntime(25198): at android.os.Looper.loop(Looper.java:123) 05-28 16:30:44.030: E/AndroidRuntime(25198): at android.app.ActivityThread.main(ActivityThread.java:3683) 05-28 16:30:44.030: E/AndroidRuntime(25198): at java.lang.reflect.Method.invokeNative(Native Method) 05-28 16:30:44.030: E/AndroidRuntime(25198): at java.lang.reflect.Method.invoke(Method.java:507) 05-28 16:30:44.030: E/AndroidRuntime(25198): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 05-28 16:30:44.030: E/AndroidRuntime(25198): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 05-28 16:30:44.030: E/AndroidRuntime(25198): at dalvik.system.NativeStart.main(Native Method) 

Solutions Collecting From Web of "Android从另一个类调用一个方法"

你应该使用下面的代码:

 Class2 cls2 = new Class2(); cls2.UpdateEmployee(); 

如果你不想创build一个新的实例来调用这个方法,那么你可以将这个方法parsing为static ,然后你可以调用Class2.UpdateEmployee()

而且,如果您不想实例化Class2,请将UpdateEmployee声明为静态,并像这样调用它:

 Class2.UpdateEmployee(); 

但是,你通常会想要做什么@帕拉格说。

在Class1中:

 Class2 inst = new Class2(); inst.UpdateEmployee(); 

在MainActivity中添加这个。

 Intent intent = new Intent(getApplicationContext(), Heightimage.class); startActivity(intent);