Ich erstelle eine Anwendung für einen Client und ich bin in der Situation, wo ich die Fähigkeit haben muss, einen Feldwert über eine Zeichenfolge zu referenzieren, dh die Benutzer verwenden eine Zeichenfolge, um zu definieren, in welchem Feld sie den Wert ändern möchten. das ist Teil eines abstrakten Rahmens, daher kenne ich technisch nicht den Namen der Felder, die sie ändern wollen. Natürlich könnte ich dies mit Hash-Maps tun, aber ich überlege mir, Java-Reflektionen zu verwenden, da dies den Feldern erlaubt, als Felder des Objekts zu bleiben, anstatt die Werte in einer Hash-Map zu kodieren. Ich habe die Reflexion für meine eigene persönliche Arbeit verwendet, aber ich habe mich gefragt, ob die Verwendung von Java-Reflektion tatsächlich eine schlechte Übung ist, und ich sollte mich an die hashmap-Methodik halten.Verwendet Java Reflection Bad Practice?
(Alle anderen Vorschläge zur Lösung des Designproblem beschrieben werden auch geschätzt)
Dank
Ich formuliere deine Frage: "Ist es eine schlechte Übung, Objekte zu manipulieren, damit sie nicht so funktionieren, wie sie es wollten?" Ich kann dir antworten. –
erm nein, es ist etwas anders, weil die Anwendung tatsächlich auf die Einstellung der Werte des Objekts basiert, die geändert werden sollen. Das Problem ist, dass sie über ihren String-Namen referenziert werden müssen –
Reflection ist sehr langsam, also ist es nicht eine gute Sache zu verwenden. Außerdem gibt es ja Variablen, die geändert werden können, aber was passiert, wenn Sie einen Wert der Variable in etwas Unerwartetes ändern? –