Sie fragen im Wesentlichen Folgendes: Was bedeutet "schwache Semantik"?
Im Allgemeinen, wie Sie festgestellt haben, ist "Semantik" "Bedeutung". Darüber hinaus in semantics bezieht sich auf:
die rigorose ... Studie der Bedeutung von Programmiersprachen.
Wenn wir sagen, „hat letzte Felder Injektion schwache Semantik“ bedeutet dies, dass „die Injektion letzte Felder macht es schwierig, konsequent über die Bedeutung des Programms zur Vernunft.“
Warum? Wie die Spinne im Kommentar von Boris stellte fest: „schwache Semantik“ bezieht sich auf this behaviour:
Verwenden [eine abschließende Feldeinstellung mit Reflexion] in jedem anderen Kontext [als Serialisierung] kann unvorhersehbare Auswirkungen haben, einschließlich den Fälle, in die anderen Teile eines Programms weiterhin den ursprünglichen Wert dieses Feldes verwenden“
es bedeutet, dass, wenn Sie Reflektion verwenden, um ein final
Feld zu setzen, die Bedeutung (Semantik) des Programms wird dunkel, weil es jetzt unberechenbar hat Verhalten
Das Unvorhersehbare Das in den verknüpften Dokumenten erwähnte Verhalten ist das gleiche: Andere Teile des Programms können weiterhin den ursprünglichen Wert des Feldes final
verwenden. Es wird unklar, welche Teile des Programms den ursprünglichen Wert verwenden und welche Teile den neu zugewiesenen Wert verwenden.
Aus dem verknüpften Dokument: "_Verwenden Sie in einem anderen Kontext möglicherweise unvorhersehbare Auswirkungen, einschließlich Fällen, in denen andere Teile eines Programms weiterhin den ursprünglichen Wert dieses Felds verwenden _". Scheint mir eine schlechte Idee. –
Related: http://StackOverflow.com/A/3301720/1553851. Siehe ** Vorbehalte **. – shmosel
@BoristheSpider Was ist falsch? –