forte74 Ответов: 1

Простая проблема наследования с C#


У меня есть 2 класса, животное и собака. собака наследует от класса животных. Почему я не могу получить доступ к полю b с помощью dog. b ? Если собака наследует от животного , то должна ли она знать о в ?


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace inheritance1
{
    class Program
    {
        static void Main(string[] args)
        {



            Animal a = new Animal();

            a.b = 5;

            Console.WriteLine(a.b);



            dog d = new dog();

            dog.b = 4;

            Console.WriteLine(dog.b);

            Console.ReadKey();


        }
    }


    class Animal
    {
        public int b = 3;
    
    }

    class dog : Animal
    { 
    }




}


Что я уже пробовал:

собака. b = 4;

1 Ответов

Рейтинг:
0

Ehsan Sajjad

Вы можете получить доступ к b поле использует экземпляр dog, но проблема здесь в том, что вы используете имя класса непосредственно вместо переменной экземпляра, вам нужно вызвать его с помощью d любить :

dog d = new dog();

d.b = 4; // note this, use instance variable not class name