13Java基础之final关键字、常量详解
final关键字
- final关键字是最终的意思,可以修饰(类、方法、变量)
- 修饰类:该类被称为最终类,特点是不能被继承了。例如工具类。
- 修饰方法:该方法被称为最终方法,特点是不能被重写了。
- 修饰变量:该变量只能被赋值一次。
java中的变量分为两种:
- 成员变量
- 静态成员变量
- 实例成员变量 - 局部变量:方法内,形参,for循环变量,构造器中的变量都是局部变量。
fianl修饰变量的注意:
- final修饰基本类型的变量,变量存储的数据不能被改变。
- final修饰引用类型的变量,变量存储的地址不能被改变,但地址所指向对象的内容是可以被改变的。
案例:
public class FinalDemo01 {
// 5. final修饰成员变量
// static + final修饰的变量,称之为常量,一般用大写字母表示。值只有一个,而且不能被修改。
public static final String NAME = "二小";
// 6. fianl修饰实例成员变量(没有意义)
private final String name = "高秀兰";//没有意义!
public static void main(String[] args) {
// 3. final修饰变量,有且只能被赋值一次。
final int a = 10;
// a = 14; //报错,final修饰的变量不能被修改
}
// 4. final修饰局部变量
// 购买手机,折扣不能修改,只能参数使用final修饰
public static void buy(final double z){
System.out.println("买手机打" + z + "折!");
}
// 1.final修饰类,不能不继承
//final class A{ }
//class B extends A{ } //报错,不能继承
// 2.final修饰方法,方法不能被重写
class C{
public final void print(){
System.out.println("我是父类");
}
}
class D extends C{
// @Override
// public void print(){
// System.out.println("我是子类");
// }
}
}
常量详解
- 使用了static fianl修饰的成员变量就称为常量。
- 作用:通常用于记录系统的配置信息
注意:常量名的命名规范:建议使用大写英文字母单词,多个单词使用下划线连接起来。
使用常量记录系统配置信息的优势、执行原理
- 代码可读性更好,可维护行业更好。
- 程序编译后,常量会被"宏替换":出现常量的地方会被替换成其记住的字面量,这样可以保证常量和直接用字面量的性能是一样的。
案例:
参数类:
public class Consrant {
public static final String SCHOOL_NAME = "清华大学";
}
main方法:
// 目标:搞清楚常量的作用:做系统的配置信息
public class FinalDemo02 {
public static void main(String[] args) {
System.out.println(Consrant.SCHOOL_NAME);
System.out.println(Consrant.SCHOOL_NAME);
System.out.println(Consrant.SCHOOL_NAME);
System.out.println(Consrant.SCHOOL_NAME);
}
}

浙公网安备 33010602011771号