很小的一段代码。。但我太菜了,看不出问题using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace Animal
{
    class Program
    {
        public interface Animal
        {
            void Move();
        }         abstract class Cat: Animal 
        { 
            public void Eat(){Console.Write("Eat!");}
        } 
          public class Use : Cat
           {
               public override void Move()
               {
                   throw new NotImplementedException();
               }
           }
       
        static void Main(string[] args)
        {
            Use u = Use();
            u.Move();
        }
    }
}
编译之后,报错:Cat类比Use类可访问性低。  什么意思啊??

解决方案 »

  1.   

    abstract class Cat: Animal 
            { 
                public void Eat(){Console.Write("Eat!");}
            } =>
    public abstract class Cat: Animal 
            { 
                public void Eat(){Console.Write("Eat!");}
            } 
      

  2.   

            public abstract class Cat: Animal 
            { 
                public void Eat(){Console.Write("Eat!");}
            } 
      

  3.   


     public interface Animal //public
            {
                void Move();
            }        public abstract class Cat: Animal //不加public,默认是private
            { 
                public void Eat(){Console.Write("Eat!");}
            } 
              public class Use : Cat  //public
               {
                   public override void Move()
                   {
                       throw new NotImplementedException();
                   }
               }//cat是private,而use是public,访问级别当然不一样
      

  4.   

    类默认访问级别是protected
    子类访问性要比父类高