final局部变量

来源:互联网 发布:中兴软件开发技术面 编辑:程序博客网 时间:2024/05/19 22:52

源代码:

public class Java22 {    public void System1(int a){        a=15;        System.out.println(a);    }    public void System2(final int a){        System.out.println(a);    }    public static void main(String[] args) {        Java22 b=new Java22();        b.System1(10);        b.System2(10);    }}
运行结果:


  1.final修饰的类,那么其类不能派生出其他的类;final修饰的变量,那么其变量的值不能被二次赋值;final修饰的方法,那么该方法不能被重写;

  2.final修饰形参时,指的是形参只能够接受实参所附给其的值,不能够在方法中对形参进行赋值,例如上面的源代码所示,System1进行了二次赋值,所以输出的a是15.而System2由于其形参用了final修饰,所以不能够进行二次赋值,所以输出的是10;(这里要注意一下,形参是可以进行二次赋值的)

  3.在java中。由于成员变量是必须要赋值的(就算没有显示地赋上初值,系统也会为成员编译隐式地赋上默认的初值),所以成员变量所对应的final成员变量也必须显示地赋上初值(假如对final成员变量隐式地赋上初值时完全没有任何意义的);而局部变量系统是不会对其赋初值的,所以局部变量所对应的final局部变量也没有要求必须赋上初值;

  4.对final修饰的局部变量而言,对其的要求仅仅是只能进行一次显示的初始化。

0 0
原创粉丝点击