java 中的final解析

本文详细介绍了Java中final关键字的用法及其应用场景,包括final修饰的类、方法和变量的特点及限制,并通过具体代码示例解释如何正确使用final关键字。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

final 修饰的类,不能被继承

   Java中的String 就是final类,不能被继承 Math也是
   在实际开发中,原则上不允许使用final类 ,如:Spring,Hibernate,Struts 2
   这些框架经常动态代理(动态继承)技术。使用final的类可能造成这些框架
   的问题。
 2.final修饰的方法,不能再被覆盖
 3.final修饰的变量,初始化以后不允许在修改了
    a final 局部变量
    b final 方法变量
    c final 成员变量
 4.final static --Java 使用final static 修饰的变量作为常量,
 一般要求常量名都有大小写

public class FinalDmeo {
  final int b = 1;//不能再修改
  static final int C = 2;//C是常量
  public static void main(String[] args) {
    final int a = 1;
    //a++;//错, 不能修改final变量
    int x = add(3,4);
    System.out.println(x);//8
  }
  public static int add(final int a, int b){
    //a++;//错误, a不能改变
    b++;
    return a+b;
  }
}

final class Xoo{}//final 类不能再被继承了
//class Yoo extends Xoo{}//错
//class MyString extends String{};//错

class Yoo{
  final int getVal(){//final 的方法, 不能被覆盖
    return 1;
  }
}
class Zoo extends Yoo{
  //int getVal(){//错误, final 的方法, 不能被覆盖
  //  return 2;
  //}
}






 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值