目录:
- final关键字介绍
- final修饰类
- final修饰方法
- final修饰变量
1. final关键字介绍
final关键字的意思:
是不能改变的意思,用来修饰类、方法、变量。
用法:
Java提供了Final关键字主要用来修饰一些不可改变的内容。
2. final修饰类
注意:
final修饰的类,不能被继承。
代码演示:
final class 类名 { }
// 代码演示:
final class Fu { }
在API里面可以看到:
(public final class String) 、 (public final class Math) 、 (public final class Scanner)、等等都是被final修饰的,目的就是:我可以让你用但是你不可以乱来(修改)
3. final修饰方法
注意:
final修饰的方法,不能被重写。
代码格式:
修饰符 final 返回值类型 方法名(参数列表){
//方法体
}
4. final修饰变量
注意:
被fianl修饰的变量只能赋值一次
代码1:
final int c = 0;
for (int i = 0; i < 10; i++) {
c = i;
System.out.println(c);
}
代码2:
for (int i = 0; i < 10; i++) {
final int c = i;
System.out.println(c);
}
- 上面说过被fianl修饰的变量只能赋值一次,那么这两个代码那个会出问题?可以去idea试试哦。
为什么代码2不会报错呢,因为代码2在循环内每次循环都是一次新的变量
4.1 修饰实例变量
- 成员变量涉及到初始化的问题,初始化有显示初始化和构造器初始化,两者不可兼得。
- 显示初始化(定义时就赋值)
public class Student {
final int num = 10;
}
- 构造器初始化(在构造器中赋值)
public class Test {
private int num;
public ConstructTest() {
//通过构造器来初始化
num = 5;
}
}