public interface ShapeListener {       //假设定义的一个接口类
void shapeMoveDown(Shape shape);
}
public class Shape{
private ShapeListener listener;
 private class shapeDriver implements Runnable{     //定义的内部类
@Override
public void run() {
// TODO Auto-generated method stub
while (true) {
moveDown();
listener.shapeMoveDown(Shape.this);//
}
}
}
}
问题:为什么能用listener直接listener.shapeMoveDown(Shape.this);而在运行时不会出现空指针异常问题?求解释。谢谢!