编程那点事编程那点事

专注编程入门及提高
探究程序员职业规划之道!

final关键字修饰变量

Java中被final修饰的变量为常量,它只能被赋值一次,也就是说final修饰的变量一旦被赋值,其值不能改变。如果再次对该变量进行赋值,则程序会在编译时报错。

public class Example {
    public static void main(String[] args) {
        final int num = 100;
        num = 4;
    }
}

编译程序报错

当第4行对num 赋值时,编译报错。原因在于变量num 被final修饰。由此可见,被final修饰的变量为常量,它只能被赋值一次,其值不可改变。

被final关键字修饰的变量为局部变量。

class Student {
    final String name;
    public void introduce() {
        System.out.println("我是一名学生,我的名字叫" + name);
    }
}
public class Example {
    public static void main(String[] args) {
        Student student = new Student();
        student.introduce();
    }
}

出现了编译错误,提示变量name没有初始化。这是因为使用final关键字修饰成员变量时,虚拟机不会对其进行初始化。因此使用final修饰成员变量时,需要在定义变量的同时赋予一个初始值,下面将第2行代码修改为:

final String name="小海绵"; //为final 关键字修饰的name 属性赋值

运行结果:

我是一名学生,我的名字叫小海绵


未经允许不得转载: 技术文章 » Java编程 » final关键字修饰变量