base用来调用基类的构造函数,即再调用子类的构造函数时来初始化基类
基类中的东西想hide可以定义为private

解决方案 »

  1.   

    base表示它的父类
    base()父类的构造 方法。(当然有不同参数的重载。)
      

  2.   

    Sample:
    class clsA
    {
    int a,b;
    public clsA(int nA,int nB)
    {
    a=nA;
    b=nB;
    } public int Add()
    {
    return a+b;
    } private int AddX()
    {
    return a+b;
    }
    } class clsB:clsA
    {
    public clsB(int nA,int nB):base(nA,nB)
    {
    } public int AddB()
    {
    //return this.AddX();//Can't be used
    return this.Add();
    }
    }
      

  3.   

    to Knight94() 
    有点不懂...
    clsB继承了clsA,clsA的方法clsB中不是都可以引用吗?
    public int AddB()
    {
    //return this.AddX();//Can't be used
    return this.Add();
     }
    不懂为什么AddX方法不能够用...?
      

  4.   

    看出来了,addx的访问范围是private
      

  5.   

    base(x,y)表示在初始化子类时,直接用父类的函数来构造这两个参数,其它的不在父类中参数用子类来初始化。new function()是为了在隐藏父类的东西,而不破坏它。这样想用父类就用父类,想用子类就用子类,这其中还汲及到子类、父类其中的转换关系
      

  6.   

    子类只能访问基类中public和protected的成员和函数