2016-04-24 11 views
-4
public class Shape { 
    public static int counter = 0; 
} 

Eclipse mir sagen verwenden counter mit final oder ohne static verwenden? Warum?Java SE static final

+5

Bitte posten Sie die * genaue * Fehler/Warnmeldung, die Sie sehen. Vielen Dank. – Pang

+0

ok sehr tut mir leid, es war meine erste Frage –

+0

@ m.arbabi: Es gibt eine handliche "bearbeiten" -Link auf die Frage. :-) (Oder "löschen", wenn Sie möchten, bis Sie eine Antwort erhalten.) –

Antwort

1

Es ist durchaus zulässig, eine öffentliche statische Datei zu haben, die nicht final ist. Sie können jedoch eine "lint" -Option aktivieren, die Sie warnt, weil sie generell schlecht ist (mit allen üblichen Vorbehalten, für die es wahrscheinlich Ausnahmen gibt) die Regel). Es ist unmöglich, dies mit Sicherheit zu sagen, da Sie den genauen Fehler/die Warnung/Nachricht nicht zitiert haben.

Veränderbare öffentliche statische Felder machen das Schreiben von Testcode schwierig und führen zu einer engen Verknüpfung zwischen der Klasse mit dem Feld und der Klasse mithilfe der Felder. Auch hier ist es perfekt, nur in der Regel nicht das, was Sie tun möchten.