Java 我错在哪里

Java 我错在哪里,java,android,Java,Android,问题出在main活动中我就是这样做的 public class temp { public int data0;//整数 public int data1;//小数 public int data2; public int data3; public long firsttime; public temp(int type,int data0, int data1, int data2, int data3, long

问题出在
main活动中
我就是这样做的

public class temp 
{
    public int data0;//整数
    public int data1;//小数
    public int data2;
    public int data3;
    public long firsttime;
    public temp(int type,int data0, int data1, int data2, int data3,
             long firsttime) {
        super();
        this.data0 = data0;
        this.data1 = data1;
        this.data2 = data2;
        this.data3 = data3;
        this.firsttime = firsttime;
    }


}
public class ShareDate {

   public static temp mtemp=null;
   public static date mdate=null;

}

然后程序意外停止。我不知道哪里出错了?

初始化代码在哪里

ShareDate.mtemp.date0=20; 

类的对象必须初始化才能使用其数据成员/方法。

在使用对象之前需要初始化。。没有初始化代码

mtemp=new temp();
为什么使用构造函数

如果你使用

mtemp=new temp();

不需要构造器。

在编辑@Krishnabhadra时深呼吸,你甚至创建了一个临时类的实例吗?@Krishnabhadra,我只是说你要做有意义的编辑:)这是什么意思?我在MainActivity ShareDate类中使用了ShareDate类,包括静态临时mtemp。我是说为什么我不能对mtemp.date0进行评估?但是mtemp是静态的为什么它需要初始化?你是说在类ShareDate中?我被初始化为null,然后在MainActivity中我仍然无法计算;比如ShareDate.mtemp.date0=20;哦,谢谢你的回答帮助了我,现在没事了。必须先初始化。
ShareDate.mtemp.date0=20;  like this ,,