1.潜艇游戏加载图片时报空指针
报错如下
Exception in thread "main" java.lang.NullPointerException at cn.tedu.submarine.Images.main(Images.java:27)
代码如下
package cn.tedu.submarine;
import javax.swing.ImageIcon;
public class Images {
public static ImageIcon sea;//海洋图片
static {
ImageIcon sea=new ImageIcon("img/sea.png");
}
public static void main(String[] args) {
System.out.println(sea.getImageLoadStatus());
}
}
原因分析
Images类中定义了ImageIcon类型的 sea,而static静态块中重新定义了一次sea,这两个是不同的变量,一个是局部的一个是成员的,main方法中输出中获取的是类中的成员sea
2.疑惑为什么复写equals()方法是需要强转一次
原因分析
equals()是所有引用类型所共用的,调用时传值时,会向上造型,造型后Object o是调不出Point中的x和y属性的,所以是需要强转一次的。



