今天在做一个数据库作业的时候,用了netbeans来做一个作业,但是报了个空指针错误,搞了两个小时终于知道哪里有问题,但是还是不知道是啥问题,我另外写了一个测试程序,如果能搞清楚这个问题的话,那么我想我也就知道怎么做了,希望有哪位大哥哥小姐姐帮忙看一下,感激不尽。
public class Test {
private static Person p;
private void set() {
p=new Person(null, 0);
System.out.println("fsdaf");
}
public static void main(String[] args) {
new Thread(new Runnable() {
@Override
public void run() {
new Test().set();
}
});
//System.out.println(p);
}
}
这样没有打印信息,我想问的是,为什么set方法里面的打印语句不执行,还有,如果去掉main方法里面的打印注释,打印结果为null。我没有c币,来白嫖的,对不起,哈哈哈
1.你的thread都没有start,怎么可能会打印呢?
2.就算执行了start,main的打印基本上还是null(不能说绝对,但不是null的概率几乎为0),因为开了线程变成异步的了,当然是下一行的代码比新线程执行的快。
问答版主就是牛,从现在起只回论坛,不在踏入问答半步