Ich habe gerade ein neues Projekt in den neuesten Netbeans gestartet, und ich habe bemerkt, dass es angefangen hat, mir Code-Advisories für Code wie diesen zu geben:
%Vor%es sagt
%Vor%es will es "reparieren":
%Vor%was ich überhaupt nicht will. Ich bin besonders daran und es lässt den Code unnötigerweise überladen aussehen. Ich habe Zehntausende Zeilen Code, die die zusätzlichen Klammern nicht verwenden (und anscheinend nicht brauchen). Angenommen Netbeans hat Recht, wann ist diese Anforderung eingetreten und was treibt sie an?
P.S. Ich weiß, dass ich diese Nachrichten abschalten kann.
UPDATE ZU FRAGE:
Es war vielleicht nicht so offensichtlich, wie ich das geschrieben habe, aber basierend auf den Kommentaren von @ corsiKa sollte ich vielleicht klarstellen. Ich wollte wirklich keine Diskussion darüber, ob die geschweiften Klammern waren oder nicht wünschenswert . Ich wollte wissen, ob sie notwendig geworden sind.
Die Jungen und Mädchen, die Netbeans schreiben und produzieren, sind normalerweise ziemlich gut in die Community eingebunden und welche Richtung Java einschlägt oder was in Erwägung gezogen wird. Daher hielt ich es für möglich, dass sie, als sie den Beratungsmechanismus nutzten, uns darauf hinwiesen, dass sich die Java-Grammatik ändern wird und dass die Code-Praxis, die ich verwendete, irgendwann veraltet sein würde .
Aus der Antwort von saber_raider unten sieht es so aus, als wäre die Antwort nein. Es scheint, dass der Netbeans Advisory mit dem Wort MUST übertrieben wurde, wie Mystical vorgeschlagen hat.
Dies ist definitiv keine syntaktische Anforderung von Java, sondern nur eine Eigenschaft von Netbeans. Fühlen Sie sich frei, es auszuschalten, wenn Sie sicher sind, was Sie tun ...
Es ist doch ein Ratschlag, keine Regel. Ich habe viele Fälle gesehen, in denen ein Mangel an Klammern einen direkten Einfluss auf "Lesbarkeit" und Wartung hatte, da ein if nur die nächste Codezeile anstelle der nächsten zwei Zeilen umschließt, wie in diesem Beispiel:
%Vor% condition
wird immer auf "false" gesetzt und führt zu einem Fehler.
In dem speziellen Fall, den Sie angeben (Variablen), würde ich ein Inline-If ( x = a == null ? 0 : 1;
) anstelle von if-else
verwenden, aber es ist nur meine Meinung.