class Super
{
int i=0;
public Super(String a)
{
System.out.println("A");
i=1;
}
public Super()
{
System.out.println("B");
i+=2;
}
}
class Demo extends Super
{
public Demo(String a)
{
//super();
System.out.println("C");
i=5;
}
public static void main(String[] args)
{
int i=4;
Super d=new Demo("A");
System.out.println(d.i);
}
}

解决方案 »

  1.   

    主类Demo前应有public修饰
      

  2.   

    文件名是super,怎么能在demo前加public?
      

  3.   

    其实楼上两位都说的是一个事, 
    java文件中只能有一个public类,并且类名必须与文件名相同
    看楼主demo类有 main方法,在class Demo前加个public关键字
      

  4.   

    class Demo extends Super
    改成
    public class Demo extends Super然后文件名为Demo.java  就可以执行了。
      

  5.   

    这个应该在学HelloWorld时就应该知道的,main方法得写在public 修饰的类中。因为编译器只会从public修饰的那个类去找main方法,当找不到时就会给你报“找不到或无法加载主类”这个错误