class C extends A{
String i="abcd";
C(){
super(i);//总是在这一行报错,如果改成super("abcd");就没问题
B test_b=new B();
}


}试试

解决方案 »

  1.   

    super(i)始终应该是第一句语句
      

  2.   

    在方法里面声明变量不太好吧,一般我们也不那样做,我帮你修改了一下,可以参考参考:
    class A{
    A(String i){
    System.out.println("This is class A"+i);

    }
    }
    class B{
    B(){
    System.out.println("This is class B");
    }
    }
    class C extends A{
    static String i = "abcd";
    C(){
    super(C.i);
    B test_b=new B();
    }
    }
    public class Constructor {

    public static void main(String[] args){
    C test_c=new C();
    }
    }