2017-11-11 8 views
-2

Wenn ein empfangenes Objekt [JSON oder Excel-Datei] 10 Felder hat. Von den 10 Feldern sind 4 stabil, während 6 Felder und ihre Namen geändert werden. Es könnte Felder aus den gegebenen 6 Feldern entfernen und es könnten neue Felder hinzugefügt werden. Wie man Klassen gestaltet oder solche Fälle mit minimalen Änderungen in Zukunft behandeltJava Klassenentwurf für zukünftige Änderungen

+0

vielleicht nur eine Karte verwenden. –

+0

Eine Karte, wenn von Kind zugegriffen wird, kann geändert werden. Ich will nicht, dass irgendjemand Stallnamen ändert. – user3401717

+0

Sie können es eine unveränderliche Karte machen –

Antwort

0

Nehmen wir an, Sie haben in Ihrem Beispiel Benutzerinformationen in Ihrer Datei vertreten. Wenn Sie stabile und instabile Felder haben, legen Sie einfach instabile Daten in andere Klassen.

class User { 
     String name; 
     String surname; 
     String gender; 
     Integer age; 
     Metadata metadata; 

    //constructor that receive all this data 

} 

class Metadata { 
//here fields that's you change in future but 
//class User don't need to know about this changes 
} 
+0

Meinen Sie, Basisklasse mit stabilen Feldern hinzuzufügen und es mit Klasse so zu erweitern, dass Kindklasse instabiles Feld hat? – user3401717

+0

@ user3401717 Nein, in meiner Antwort User and Metadata gibt es zwei verschiedene Klassen, hier brauchen keine Erweiterungen – fxrbfg

Verwandte Themen