Hi I'm new to OOP and I can't seem to find information on this problem I have. Any help would be great. I'm working in C#
So I have a base abstract class Animal, and a derived class Pig. I want to have other derived classes such as a cow etc. Each animal need to have a name.
Do I place the AnimalName field as protected in the base class and use base.AnimalName to access? Or should the name field belong to the derived class as a private/protected field?
My thinking is that if I have abstract methods that need to be overwritten, should be name field not follow a similar format or should it rather just be declared in the derived class.
Is there is a convention to this?