• Java知识系统回顾整理01基础03变量07final关键字


    一、final赋值

    final 修饰一个变量,有很多种说法,比如不能改变等等 

    准确的描述是 当一个变量被final修饰的时候,该变量只有一次赋值的机会

       

    二、在声明的时候赋值

    i已经被赋值为5,所以这里再次赋值会出现编译错误

    public class HelloWorld {

        public void method1() {

            final int i = 5;        

            i = 10; //i已经被赋值5,所以这里再次赋值会出现编译错误      

        }

    }

       

    三、在声明的时候没有赋值

    如果变量在声明的时候被final修饰且未赋值,那么可以在后面代码中对变量进行唯一的一次赋值。

    public class HelloWorld {

        public void method1() {

            final int i;      

            i = 10; //i在第3行,只是被声明,但是没有被赋值,所以在这里可以进行第一次赋值    

            i = 11; //i在第4行已经被赋值为10,所以这里再次赋值会出现编译错误      

        }

    }

       

    四、final修饰其他

    final 除了修饰变量,还可以修饰类修饰方法

       

    五、练习及答案

    题目:

    如果final修饰的是参数,能否在方法里给这个参数赋值?

    public class HelloWorld {

        public void method1(final int j) {

            j = 5; //这个能否执行?

        }

    }

       

    官方答案:

    不能,因为在调用方法的时候,就一定会第一次赋值了,后面不能再进行多次赋值

       

    个人整理答案:

       

  • 相关阅读:
    mac 配置 iterm2
    python面试题
    待办事项--flask
    八皇后问题c语言版(xcode下通过)
    对分布式一些理解
    观察者模式
    用redis实现悲观锁(后端语言以php为例)
    只用200行Go代码写一个自己的区块链!(转)
    php的生命周期的概述
    linux网络编程1 最简单的socket编程
  • 原文地址:https://www.cnblogs.com/xlfcjx/p/10767772.html
Copyright © 2020-2023  润新知