Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 4.0 通过子类调用非抽象方法时出错_C# 4.0 - Fatal编程技术网

C# 4.0 通过子类调用非抽象方法时出错

C# 4.0 通过子类调用非抽象方法时出错,c#-4.0,C# 4.0,//错误:错误1“Abbstraction.cat.sound”:重写“public”继承成员“Abbstraction.animal.sound”时无法更改访问修饰符E:\C sharp\ObjectOrientedConcept\Abbstraction\Program.cs 39 33 Abbstraction将抽象类animal中的抽象方法签名声音定义为public 稍后尝试将“访问”修改器更改为“受保护”。这是不允许的。您必须坚持使用基类中定义的修饰符 class Progra

//错误:错误1“Abbstraction.cat.sound”:重写“public”继承成员“Abbstraction.animal.sound”时无法更改访问修饰符E:\C sharp\ObjectOrientedConcept\Abbstraction\Program.cs 39 33 Abbstraction

将抽象类animal中的抽象方法签名声音定义为public

稍后尝试将“访问”修改器更改为“受保护”。这是不允许的。您必须坚持使用基类中定义的修饰符

    class Program
    {
        static void Main(string[] args)
        {
    // in here iam create an instance of child class
            var obj = new dog("meat");
            obj.run();
            obj.sleep();

            Console.ReadLine();

        }
    }
    abstract class animal {
        protected string eating;
        abstract public void sound();

        public void run() {
            Console.WriteLine("Runnig");
        }
        public void sleep()
        {
            Console.WriteLine("sleeping");
        }
    }
    class cat : animal
    {
        public cat(string eat) {
            this.eating = eat;
        }
// this is my child class define parent class method
        protected override void sound()
        {
            Console.WriteLine("Meow");

        }
    }
    class dog : animal{

        public dog(string eat){
            this.eating = eat;
        }
        public override void sound()
        {
            Console.WriteLine("Woof");

        }
    }