main()是一切程序的入口,程序一开始要进入main()的。

解决方案 »

  1.   

    class abc {
       abc(int ) { System.out.println("abc" + );}
    }public class func {
       public func(){
       
       
      public static void main(String [] argv) {
           }
      abc a1=new abc(1);
      abc a2=new abc(2);
    }
      

  2.   

    我帮你改了一下,看看你能不能明白意思class abc {
       abc(int ) { System.out.println("abc" + );}
    }public class func {
       public func(){
            System.out.println("func");
       }
       
      public static void main(String [] argv) {
         new func();
      }
      abc a1=new abc(1);
      abc a2=new abc(2);
    }
      

  3.   

    或者是这样:
    class abc {
       abc(int ) { System.out.println("abc" + );}
    }public class func {
       public func(){
            System.out.println("func");
       }
       
      public static void main(String [] argv) {
         //new func();
      }
      abc a1=new abc(1);
      abc a2=new abc(2);
    }然后是这样:
    class abc {
       abc(int ) { System.out.println("abc" + );}
    }public class func {
       public func(){
            System.out.println("func");
       }
       
      public static void main(String [] argv) {
        // new func();
      }
      static abc a1=new abc(1);
      static abc a2=new abc(2);
    }
      

  4.   

    是的,一开始我也想过,不过书中举的例子却是先于MAIN执行,大致如下:class abc {
       abc(int ) { System.out.println("abc" + );}
    }class def {
       static abc a1;
       static abc a2;
       static {
         a1=new abc(1);
         a2=new abc(2);
        }
       def () { System.out.println("def()");}
    }
      public class func {
      public static void main(String [] argv) {
         System.out.println("in main");
      }
      def b1=new def();
      
    }
      

  5.   

    你把书上的改成这样试试
    class abc {
       abc(int ) { System.out.println("abc" + );}
    }class def {
       static abc a1;
       static abc a2;
       //static {
         //a1=new abc(1);
         //a2=new abc(2);
        //}
       def () { System.out.println("def()");}
    }
      public class func {
      public static void main(String [] argv) {
         System.out.println("in main");
      }
      def b1=new def();
      
    }
      

  6.   

    还不明显吗?
    static是现于main()执行的。
      

  7.   

    class def {
       static abc a1;
       static abc a2;
       static {
         a1=new abc(1);
         a2=new abc(2);
        }
       def () { System.out.println("def()");}
    }
      public class func {
      public static void main(String [] argv) {
         System.out.println("in main");
      }
      static def b1=new def();
      
    }
      

  8.   

    非常感谢Bricklayer的回贴,其中有:
    class abc {
       abc(int ) { System.out.println("abc" + );}
    }public class func {
       public func(){
            System.out.println("func");
       }
       
      public static void main(String [] argv) {
         new func();
      }
      abc a1=new abc(1);
      abc a2=new abc(2);
    }
    好像是加了构造函数,对结果是否有影响???(现我在的机子没有编绎器)
      

  9.   

    static void main(){}
    执行的时候根本没有实例一个类.
    这是静态方法...
      

  10.   

    func类还没有生成对象,里面的数据成员当然就没有机会被初始化了。
    这样就好了。
    class abc {
       abc(int ) { System.out.println("abc" + );}
    }public class Test{
      public static void main(String [] argv) {
         new Test();
         System.out.println("main");
         
      }
      abc a1=new abc(1);
      abc a2=new abc(2);
    }