黑马程序员技术交流社区

标题: 关于继承的super问题 [打印本页]

作者: 郭强    时间: 2013-4-13 16:09
标题: 关于继承的super问题
本帖最后由 郭强 于 2013-4-13 18:34 编辑

class A{
int x;
}public class B extends B{
int x;
public static void main(String args[]){
x=2;//调用的B里面的x
super.x=2;//我想调用父类的x,为什么编译器显示错误,该怎么改?先谢谢了!
}
}


作者: 殇_心。    时间: 2013-4-13 16:23
哥们,没看懂你什么逻辑,你看下我代码  是不是你要的意思。
class A
{
        private int x;
        A(int x)
        {
                this.x = x;
        }
}
class B extends A //继承A
{
        B(int x)
        {
                super(x); //调用父类构造方法
        }
}
public class Main
{
        public static void main(String[] args)
        {
                int x = 2;
                B b = new B(x);//创建B对象。
        }
}
作者: lipingan0520    时间: 2013-4-13 16:25
  1. public class B extends B

  2. 不能继承自己吧。
复制代码

作者: 殇_心。    时间: 2013-4-13 16:26
哥们,没看懂你的逻辑。。 你看下我代码 是不是你要的意思
class A
{
        private int x;
        A(int x)
        {
                this.x = x;
        }
}
class B extends A //继承A
{
        B(int x)
        {
                super(x); //调用父类构造方法
        }
}
public class Main
{
        public static void main(String[] args)
        {
                int x = 2;
                B b = new B(x);//创建B对象。
        }
}
作者: 郭强    时间: 2013-4-13 16:38
好的,谢谢
作者: 刘胜寒    时间: 2013-4-13 16:40
  1. class A
  2. {
  3.         int x = 2;
  4. }

  5. public class Main extends A
  6. {
  7.         int x;
  8.         void show()
  9.         {
  10.                 System.out.println(super.x);
  11.         }
  12.         public static void main(String[] args)
  13.         {
  14.                 int x = 4;
  15.                 new Main().show();
  16.         }
  17. }
复制代码
看看符不符合你的要求




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2