У меня есть что-то вроде следующей ситуации ниже:
class Base
{
public static int x;
public int myMethod()
{
x += 5;
return x;
}
}
class DerivedA : Base
{
}
class DerivedB : Base
{
}
Я пытаюсь настроить это так, чтобы каждый производный класс имел свой собственный статический экземпляр x, если я сделаю что-то вроде этого:
DerivedA.x = 5;
DerivedB.x = 10;
затем, когда я бегу:
DerivedA.myMethod(); //The result will be 10
DerivedB.myMethod(); //The reusult will be 15
Могу ли я сделать что-то подобное? Как я могу настроить производные классы для достижения этой цели? Спасибо, парни.
РЕДАКТИРОВАТЬ: По сути, у меня есть куча производных классов, каждый из которых имеет свойство, уникальное для этого класса. Он не меняется для каждого экземпляра, и поэтому я считаю, что это должна быть статическая переменная. Кроме того, это свойство задается методом, одинаковым для каждого из этих классов. Я пытаюсь избежать копирования и вставки логики для этого свойства и метода в каждый из этих производных классов. Я подумал, что лучше каким-то образом перенести эту логику в базовый класс, от которого происходят все эти классы. Но мне нужно, чтобы каждый производный класс имел собственную копию этого свойства. Мне не обязательно делать это таким образом, и я буду рад услышать некоторые предложения по улучшению практики, если они у вас есть. Спасибо!