我正在尝试调用getFailureDialog()
接口的方法OnSelectedListener
。该方法在中实现MainActivity.java
。但是当我调用该方法时,我得到了空指针异常。
我知道这是因为OnSelectedListener
它仍未初始化,因此您正在调用getFailureDialog()
未初始化的对象。显然,接口方法永远不会初始化。但是,如何getFailureDialog()
从类中调用该方法Common.java
呢?
我只在下面放置相关的源代码-
源代码:
SharedFragment.java
public class SharedFragment extends DialogFragment
{
Bundle bundle = getArguments();
final String email = bundle.getString("email");
Thread t=new Thread(new Runnable()
{
public void run() {
common.myRecord(email);
}
}); t.start();
}
通用.java
public class Common
{
OnSelectedListener mCallback;
public interface OnSelectedListener
{
public void getFailureDialog();
}
public void myRecord(String email)
{
mCallback.getFailureDialog(); //null pointer exception here
}
}
MainActivity.java
public class MainActivity implements Common.OnSelectedListener
{
@Override
public void getFailureDialog()
{
RecordFailure fd = new RecordFailure();
fd.show(getSupportFragmentManager(), "dialog");
}
}
错误记录
03-22 15:50:39.032: W/dalvikvm(20796): threadid=16: thread exiting with uncaught exception (group=0x4204c450)
03-22 15:50:39.052: E/AndroidRuntime(20796): FATAL EXCEPTION: Thread-30126
03-22 15:50:39.052: E/AndroidRuntime(20796): java.lang.NullPointerException
03-22 15:50:39.052: E/AndroidRuntime(20796): at com.cornmail.util.Common.myRecord(Common.java:2062)
OnSelectedListener mCallback;
永远不会初始化,或者正在使用null值初始化。
public class Common
{
OnSelectedListener mCallback = new OnSelectedListener(){
public void getFailureDialog(){
JOptionPane.showMessageDialog(null, "An Error Has Occurred.");
}
};
public interface OnSelectedListener
{
public void getFailureDialog();
}
public void myRecord(String email)
{
mCallback.getFailureDialog(); //now this works.
}
}
问题内容: 在Golang中工作,正在尝试使用接口将使用相似方法的一组结构归为一组。简而言之,我有这个: 然后,应该用作接口的结构: 我想念什么?还是我做错了什么? 问题答案: 如果您的接口这样声明: 然后,任何实现a的类型都将满足该接口。 在您的情况下,然后创建此方法: 这意味着类型满足接口。 但是..注意那里。没有实现该接口,而是由谁来实现。 因此,在尝试为接口变量分配类型时,请确保使用指针而
公共视图onCreateView(LayoutInflater inflater,ViewGroup container,Bundle savedInstanceState){View v=inflater.inflate(r.layout.fragment_main,container,false); fragment.xml null
我是Apache Camel的新手,正在尝试构建api。它有三个类。 A类-这是为了读取下面application.properties文件 B类-阿帕奇骆驼路线。 类C-Bean类,其中类A是自动连接的。 每当IDE执行api时,它都会在行中抛出Null指针异常。getUsername() 。我已经验证了spring boot能够加载应用程序。属性。 我不确定为什么调用自动加载类的方法会抛出空指
问题内容: 我在登录模式提交按钮的单击侦听器中遇到问题。 这是错误。 我对什么是空指针异常有一个合理的了解,并且已经彻底搜索了一个类似于我的问题。我试图以几种方式重新格式化点击侦听器,确保我具有正确的视图ID等。 显然,还有更多但与我认为无关的话题。这是带有按钮的对话框的XML文件。 任何帮助将不胜感激。 问题答案: 是因为它不属于 当你调用内部的,它要寻找一个你的活动的布局中。 试试这个代替:
本文向大家介绍Java中避免空指针异常的方法,包括了Java中避免空指针异常的方法的使用技巧和注意事项,需要的朋友参考一下 没人会喜欢空指针异常!有什么方法可以避免它们吗?或许吧。。 本文将讨论到以下几种技术 1.Optional类型(Java 8中新引入的) 2.Objects类(Java 7中原有的) Java 8中的Optional类 它是什么? 1.Java 8中新引入的类型 2.它是作为
我正试图从这个链接将数据从Android应用程序发送到Raspberry pi。我已经执行了其中提到的所有步骤,但当我尝试运行该应用程序时,在android studio logcat中会出现一个错误。 错误类似于:java.lang.NullPointerExcture:尝试在空对象引用上调用虚拟方法'intorg.json.JSONObject.getInt(java.lang.String)