java-final使用细节
2021/8/5 20:06:32
本文主要是介绍java-final使用细节,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
java-final使用细节1
源码
package com.Final;
public class Final02 {
public static void main(String[] args) {
CC cc = new CC();
EE ee = new EE();
ee.cal();
}
}
class AA{
/*
1. 定义时 如public final double TAX_RATE = 0.08;
2. 在构造器中
3. 在代码块中
*/
public final double TAX_RATE = 0.08;//1. 定义时赋值
public final double TAX_RATE2;
public final double TAX_RATE3;
public AA() {//2. 在构造器中赋值 TAX_RATE2 = 1.1; } {//3. 在代码块中赋值 TAX_RATE3 = 8.8; }
}
class BB{
/*
如果final修饰的属性是静态的 则初始化的位置只能是
1. 定义时 2. 在静态代码块中 不能在构造器中赋值
*/
public static final double TAX_RATE = 99.9;
public static final double TAX_RATE2;
static { TAX_RATE2 = 3.3; }
}
//final类不能继承 但是可以实例化对象
final class CC{}
//如果类不是final类 但是含有final方法 则该方法虽然不嫩重写 但是可以被继承
//即 仍然遵守继承的机制
class DD{
public final void cal(){
System.out.println(“cal()方法”);
}
}
class EE extends DD{}
java-final使用细节2
源码
package com.Final;
public class FinalDetail {
public static void main(String[] args) {
System.out.println(BBB.num);
}
}
final class AAA{
//一般来说 如果一个类已经是final类了 据没有必要再将方法修饰成final方法了
//public final void cry(){}
}
//final 和 static往往搭配使用 效率更高 不会导致类加载 底层编译器做了优化处理
class BBB{
public final static int num = 10000;//final 和 static 位置可以调换
static {
System.out.println(“BBB 静态代码块被执行”);
}
}
这篇关于java-final使用细节的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南