Java 1.1 ermöglicht es uns, Argumente endgültig zu machen, indem wir sie entsprechend in der Argumentliste deklarieren. Das bedeutet, dass wir innerhalb einer Methode nicht ändern können, worauf das Argument-Handle zeigt. Wie unten gezeigt:
/** * Created by xfyou on 2016/11/2. * final自变量演示 */ public class FinalArguments { void with(final Gizmo g) { //! g = new Gizmo(); // Illegal -- g is final g.spin(); } void without(Gizmo g) { g = new Gizmo(); // OK -- g not final g.spin(); } // void f(final int i) { i++; } // Can't change // You can only read from a final primitive: int g(final int i) { return i + 1; } public static void main(String[] args) { FinalArguments bf = new FinalArguments(); bf.without(null); bf.with(null); } } class Gizmo { public void spin() { } }