首先 Main M要大些 再次 这是程序的入口点 不是方法

解决方案 »

  1.   

    不要把main想的那么特别。首先initU.Main是一个方法,只要是能创建的对象,它都能创建。其次,其他方法可以调用initU.Main,因为它是一个静态方法,并不只是一个程序的入口。是不是程序入口是由编译器帮着决定的。至于父子关系,是因为你一定要这么去想,在程序里面有的时候很难分清楚所谓的父子关系。设想,A创建了B,B就不能调用A提供的方法了吗?
      

  2.   

    首先那是一个静态方法,
    其次里面的第一句是调用的一个实例构造函数,因为没有显式定义构造函数,所有使用的是默认的,这在其他地方也适用,如下代码也可以
    public class class1
    {
    public static create()
    {
    return new class1();
    }//或者
    //public|private class1(object arg){...}
    //
    //public static create(object arg)
    //{
    //此时将不存在默认构造函数
    //return new class1(arg);
    //}}在标准的类中,有时我们也经常看到有些类型无法通过new来构造其实例,但其类型却提供了相应的create,open,fromfile,fromstream等静态方法,我想大多也是这个原因!
      

  3.   

    那个a是实例成员,是不能直接访问的!
    另外上面的代码中两个静态方法那忘了加返回类型了,就是在public static 后再加个class1,成天晕晕的
      

  4.   

       任何类内部的方法都能调用自己类内部的其它方法,这点毫无疑问。但是这是在没有static限定的情况下或者都是static修饰的时候,可以随便调,直接写方法名就行。
       不是static的方法在调同一个类内部的static方法也是直接写方法名就可以了。
       但是static的方法调用类内部不是static的方法的时候必须先创建类的对象,然后通过对象名.方法名(参数列表)的方式去调用该方法。
       至于为什么要这样,要涉及到static修饰符的作用,或者编译原理的一些知识。