问个最基础的问题:final 在 java 中有什么做用?

据说微信搜索《Java鱼仔》会变动强哦!java

本文收录于JavaStarter (https://github.com/OliverLiy/JavaStarter),里面有我完整的Java系列文章,学习或面试均可以看看哦git

(一)知识点

final 在 java 中有什么做用?github

(二)结论

final做为Java中的关键字能够用于三个地方。用于修饰类、类属性和类方法。面试

特征:凡是引用final关键字的地方皆不可修改!微信

(1)修饰类:表示该类不能被继承;学习

(2)修饰方法:表示方法不能被重写;code

(3)修饰变量:表示变量不能被修改。对象

(三)再多学一点

(3.1)修饰变量

final修饰变量后这个变量不能被修改,这个不能被修改的说法对于不一样的数据类型有不一样的含义。blog

首先对于8个基本数据类型,当使用final修饰时,初始化后这个值是不会变的。继承

在这里插入图片描述

若是使用final修饰引用类型数据时,表示该引用初始化后永远指向一个地址,而这个地址里的对象是能够修改的。

final User user=new User("javayz",23);
user.setAge(18);

在上面一段代码中,用final修饰了自定义的User对象,但user对象依旧能够被修改。

(3.2)修饰方法

final修饰方法的做用是让方法没法被重写,这里没有太多额外的内容

(3.3)修饰类

当使用final修饰类的时候代表这个类不能被继承,被修饰的类全部成员方法都会被隐式地修饰为final方法。

相关文章
相关标签/搜索