父类子类,变量覆盖的问题

先看这样两段代码:

class Bomb

{

      static boolean isFirst = true;

public Bomb(Shot shot)

{

 

}

}

class ShotBomb extends Bomb

{

isFirst = false;//为什么会报错?  

public ShotBomb(Shot shot)

{

this.x = shot.x - 30;

this.y = shot.y - 30;

this.s = shot;

isFirst = true;//为什么编译通过?

}

}

类中只能定义变量和方法,如果想覆盖父类中的变量,就重新初始化一个isFirst,如果想调用父类中的变量,则可以通过super.isFirst来实现,并且只能将赋值语句写在方法体中。

posted @ 2011-10-20 21:41  xiao秋  阅读(449)  评论(0编辑  收藏  举报