首页 > 其他分享 >final关键字

final关键字

时间:2023-03-07 16:22:05浏览次数:30  
标签:String 关键字 static 修饰 方法 final 变量

final关键字
final可修饰属性、方法、类、局部变量(方法中的变量)。

final修饰的属性的初始化可以在编译器也可以在运行期,但初始化后不可改变,表明是一个常量。

final修饰的方法不能被重写,final修饰的类,那么这个类的所有方法都不能被重写,且被修饰的类不可被继承(如String类被final修饰后不可被继承)

final修饰String 类:

点击查看代码
public final class String implements java.io.Serializable, Comparable<String>, CharSequence {
xxx;
}

static final 共同修饰某个属性或方法
很多时候 final会和static组合使用,比如在hashMap源码中,几个重要参数都使用了 static final只能用来修饰变量、方法、内部类,表明占据一段不能改变的存储空间,只有一份,共享属性
static final 修饰成员变量:该变量是属于类的变量,且在类加载的时候就初始化好了,并且只能赋值一次,运行期间不可修改;
static final 修饰方法: 属于类的方法,且不可被重写
static final 修饰内部类: 属于外部类,且不能被继承

点击查看代码
static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; //默认初始化容量
static final int MAXIMUM_CAPACITY = 1 << 30; // 最大容量
static final float DEFAULT_LOAD_FACTOR = 0.75f;  //负载因子
static final int TREEIFY_THRESHOLD = 8; //链表树化阈值
static final int UNTREEIFY_THRESHOLD = 6; //取消树化阈值
static final int MIN_TREEIFY_CAPACITY = 64; //最小树化容量

P.S. final 是可以直接修饰类的,比如 String类就是由fianl修饰的,这点要和static区分开

标签:String,关键字,static,修饰,方法,final,变量
From: https://www.cnblogs.com/destiny-2015/p/17188401.html

相关文章

  • C# break和continue关键字
    C#break和continue关键字break跳出最里层的循环,并且继续执行该循环下面的语句。continue适用于任何循环控制结构中。作用是让程序立刻跳转到下一次循环的迭代......
  • JavaSE——转型与instanceof关键字
    为什么要转型多态的写法就无法访问子类独有功能了。当使用多态方式调用方法时,首先检查父类中是否有该方法,如果没有,则编译错误。也就是说,不能调用子类拥有,而父类没有的方......
  • 代码关键字,类名命名规则
    一、驼峰命名法:近年来越来越流行。驼峰命名法,正如它的名称所表示的那样,指的是混合使用大小写字母来构成标识符的名字。其中第一个单词首字母小写,余下的单词首字母大写。例......
  • 【Java】先return还是先finally
    之前调试只发现有的方法执行完return语句后再执行finally,但是没有细究最近debug代码的时候发现,不同返回类型的方法,return和finally执行顺序竟然不一样先看返回类型为void......
  • JAVA高级属性-关键字static
    关键字static(静态)static静态属性是指任何对象都共有的一个属性值,比如,中国人中国家的属性都是中国,这个属性不会随着对象的创建而改变,然而像是收入这种的数据会随着不同......
  • SqlServer As 关键字什么情况下可以省略什么情况不可以省略
    -列别名:可以直接在列名后面添加别名,也可以使用`AS`关键字。-表别名:可以使用`AS`关键字指定,也可以直接写表名并在其后加上别名。但是,在给子查询结果集命名时,必须用`......
  • Java-类-对象 - 对象内存图 成员变量和局部变量的不同 this关键字 构造方法 封装
         packagecom.demo.css;publicclasscss01{//java要创造对象,必须要有类的存在//类:一组相关属性和行为的集合,看做是对象的设计图//对象......
  • 1.为何try里面放return,finally还会执行,理解其内部机制
    涉及到了一种数据类型:Completion,是js七大标准类型之一为何try里面放return,finally还会执行这种行为就是因为CompletionRecord,在js中,每条语句的执行完成状态都是由Comple......
  • 标识符与关键字
    标识符注意点所有的标识符都应该以字母美元符号$或者下划线_开始首字符之后可以是字母美元符号下划线或数字的任何字符组合不能使用关键字作为变量名或方法名......
  • Spring默认定时@Scheduled不支持L、W、C关键字的解决办法
    1、Causedby:java.lang.IllegalStateException:Encounteredinvalid2、@Scheduledmethod'execute':Forinputstring:"L"3、查其原因是Spring默认定时@Scheduled......