【发布时间】:2016-03-26 14:20:38
【问题描述】:
当我尝试运行我的代码时出现此错误。 (为了让你更容易看到我跳过了大部分没有提到我的代码行的其他行)
03-26 22:23:51.800 2425-2425/? E/RCPManagerService: PackageReceiver onReceive() Failed to load meta-data, NullPointer: null
03-26 22:23:53.950 15700-15700/? E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.bilguun.pengling2, PID: 15700
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.bilguun.pengling2/com.example.bilguun.pengling2.MainActivity}: java.lang.NullPointerException
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2436)
at at com.example.bilguun.pengling2.MainActivity.onCreate(MainActivity.java:71)
如您所见,onCreate 函数的第 71 行出现错误,我试图实例化名为 Fault 的类,如本网站其他问题中所述。这是代码(我在外面声明的原因是我在许多其他功能和活动中需要这些类)
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Faults=new Fault[14];
for(int i=0;i<15;i++){
Faults[i]=new Fault("Unknown");
}
}
Fault[] Faults;
这是Fault类的代码。 Serializable 的原因是,我需要将它传递给其他活动。
class Fault implements Serializable{
public String fault_name="Not known";
public int L_number=0,T_number=0;
public String path="b";
public Fault(String name){
this.fault_name=name;
}
}
我已经尝试了所有可能的方法,包括以下链接和其他多种方法,但没有找到解决方案
NullPointerException when Creating an Array of objects
所以我的问题是
- 我可以在类之外声明一个数组,同时在 OnCreate 函数中实例化它吗?
- 除了数组声明之外,是否还有其他可能导致此类错误的错误。换句话说,代码的其他部分是否可能导致此错误?
- 既然没有 main 函数,我应该在哪里声明和实例化这些变量?
- 由于到目前为止我已经学习了 4 天的 Android Studio,从 Youtube 视频来看,我对 Java 和 Android 仍然没有信心(因为我知道的面向对象的语言只有 C++)。如果你不介意,你能推荐一本关于Android应用程序开发的书,它可以给我系统的知识吗?感谢您花时间在我的烂摊子上。
【问题讨论】:
标签: android arrays class nullpointerexception