某个类的成员对外界可见,对继承的类的内部不可见,怎么声明

解决方案 »

  1.   

    这想法 真BTprivate外界只能通过反射来访问了
      

  2.   

    C#还提出了密封方法(sealed method) 的概念,以防止在该方法所在类的派生类中对该方法的重载。
    密封方法使用sealed 修饰符,这时称该方法是一个密封方法,此方法在子类中不能被重载。
    不是类的每个成员方法都可以作为密封方法,由于必须对基类的虚方法进行重载,提供具体的实现方法。所以,在方法的声明中,sealed 修饰符总是和 override 修饰符同时使用。请看下面的代码:
    using System ;
    class A
    {
    public virtual void F( )
    { Console.WriteLine("A.F") ; }
    public virtual void G( )
    { Console.WriteLine("A.G") ; }
    }class B: A
    {
    sealed override public void F( )   // F( )是密封方法
    { Console.WriteLine("B.F") ; }
    override public void G( )
    { Console.WriteLine("B.G") ; }
    }class C: B
    {
    override public void G( )
    { Console.WriteLine("C.G") ; }
    }
      

  3.   

    本帖最后由 caozhy 于 2012-08-19 13:01:13 编辑
      

  4.   

    本帖最后由 caozhy 于 2012-08-19 13:21:06 编辑