Java 常规void方法和onClick覆盖之间的区别是什么

Java 常规void方法和onClick覆盖之间的区别是什么,java,android,methods,Java,Android,Methods,我在两个方法中仍然有相同的代码,当我单击相应的按钮时,代码会执行(包括finish()),但当我从代码中调用其他方法时,代码不会执行。有人能解释一下原因吗?如何在不使用按钮的onClick的情况下执行此代码 @Override public void onClick(View view) { Intent data = new Intent(); data.putExtra("name", "Adnan"); setResult(2, data); finish

我在两个方法中仍然有相同的代码,当我单击相应的按钮时,代码会执行(包括
finish()
),但当我从代码中调用其他方法时,代码不会执行。有人能解释一下原因吗?如何在不使用按钮的
onClick
的情况下执行此代码

@Override
public void onClick(View view) {

    Intent data = new Intent();
    data.putExtra("name", "Adnan");
    setResult(2, data);
    finish();
}

public void qoIntentin(){
    Intent data = new Intent();
    data.putExtra("name", "Adnan");
    setResult(2, data);
    finish();
}

@Override
表示重写父类中的方法(通过使用
扩展
关键字继承的方法)

因为您要从父类重写该方法,所以会从父类中的某些代码或其他地方调用该方法,您只需为其提供不同的实现


您可以在这个问题和答案中查看更多信息:

只需实例化该方法所在的类并调用它…如果这两个方法都是同一个类的一部分,那么您可以直接从onClick方法调用“qoIntentin()”。它不起作用,即使我实例化了该类(顺便说一句,该类是Android活动),也不行,我不知道这是否与此有关。如果某个东西不工作,那么它有一个原因,通常显示为某种错误消息。你的代码编译吗?如果没有,则发布编译/语法错误消息。你的代码在运行时崩溃了吗?然后请在这里发布logcat错误消息和堆栈跟踪。谢谢你的回答。我知道覆盖的工作方式,但我不知道为什么在这种情况下它会工作,而其他方法会工作not@AdnanPirota您的问题有点不清楚,不知道更多的代码和如何使用这些方法,很难说,所以我至少试着给你们一些概述。这两个方法属于第二个活动,我用第一个活动的startActivityforResult调用它。我有这样一段代码,我想从中调用我的qoIntentin()方法:public void aJaKaQellu(){for(int I=0;IqoIntentin?当用户触摸单词的最后一个字母时,shuold方法会比较他是否猜对了单词,如果他将意图返回到其他活动,当我放入最后一个字母并执行qoIntentin()时,仍然在我的屏幕上,当我点击同一屏幕上的按钮时,它不工作