A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© ZQ822 中级黑马   /  2015-4-5 13:40  /  510 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. class Super
  2. {
  3.         int i=0;
  4.        
  5.         public Super(string s)
  6.         {
  7.                 i=1:
  8.         }
  9.        
  10. }
  11. class  Demo extends Super
  12. {
  13.         public Demo(string s)
  14.         {
  15.                 i=2;
  16.         }
  17.         public static void main(String[] args)
  18.         {
  19.                 Demo d=new Demo("yes");
  20.                 System.out.println(d.i);
  21.         }
  22. }
复制代码

这个代码错的原因不懂

1 个回复

倒序浏览
本帖最后由 君嘘 于 2015-4-5 14:45 编辑
  1. class Super
  2. {
  3.         int i=0;
  4.         Super(String s)
  5.         {
  6.                 i=1;
  7.         }
  8.         
  9. }
  10. class  Demo extends Super
  11. {
  12.         Demo(String s)
  13.         {
  14.                 super(s);
  15.                 i=2;
  16.         }
  17.          public static void main(String[] args)
  18.         {
  19.                 Demo d=new Demo("yes");
  20.                 System.out.println(d.i);
  21.         }

  22. }
复制代码

这样就可以了。
你错误的地方有:
1.构造函数格式错误。应该为 类名(参数)
2.子类中的构造函数第一行默认有个super(),就是把父类中的构造函数继承过来的意思。
你父类中复写了构造函数,那么super()要改为和父类一样的格式:super(s)
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马