Ich habe eine Klasse, wie untenWie die Basis abgeleitete Klasse entwerfen, wenn es eine statische Eigenschaft in der Basis ist, und dass muss versteckt werden
public class SomeClass
{
public static int someValue;
public void Some_Logic_That_Uses_somevalue()
{
// Complex large method using 'someValue'
}
}
nun zwei abgeleiteten Klassen brauche ich. ClassA:SomeClass
und ClassB:SomeClass
.
Für beide abgeleiteten Klassen bleibt Some_Logic_That_Uses_somevalue()
die Logik gleich. Aber ClassA
wird seinen 'someValue' haben und ClassB
wird seinen eigenen anderen Wert haben und sie sind statisch.
Wie kann ich die Klassen entwerfen?
Muss der Wert * aus irgendeinem Grund statisch sein? Oder nehmen Sie einfach an, dass es sollte? Abgesehen davon sollten Sie kein Feld öffentlich zugänglich machen, stattdessen können Sie eine öffentliche Eigenschaft verwenden. – HimBromBeere
Dieser Code ist bereits da und ich möchte so wenig wie möglich Änderungen vornehmen. Es ist ein öffentlicher statischer Wert – swifty
Wenn 'someValue' ein öffentlicher statischer Wert ist und Sie' Some_Logic_That_Uses_somevalue' nicht ändern können, gibt es nichts, was Sie sehen können, soweit ich das sehen kann. –