博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java final小知识
阅读量:3905 次
发布时间:2019-05-23

本文共 1121 字,大约阅读时间需要 3 分钟。

关于final的知识:

今天刷牛客网的时候,发现了final关键字的还可以用来放在方法的参数列表里面。规则如下:
1.利用final修饰方法参数,那么如果参数是基本数据类型,那么就代表不可以在方法里面对该变量进行修改。
2.如果参数类型是一个引用类型,那么引用类型变量不可进行更改,不然让它重新指向别的内存地址空间。但是可以让它的值发生改变。

public class Test {
public static void main(String[] args) {
int i=1; System.out.println(i); //测试:参数是基本数据类型变量 checkInt(i); //测试:参数是引用类型变量 User user = new User(1,"东方嘉盛"); checkUser(user); } private static void checkUser(final User user) {
//尝试使用让user指向另一个User对象 User user1 = new User(2,"撒娇"); //编译报错:Cannot assign a value to final variable 'user' //user = user1; //改变user里面的值,比如id,或者username都可以 user.setId(26); } private static void checkInt(final int i) {
//让i重新赋值,那么会编译报错。Cannot assign a value to final variable 'i' //i=12; }}

代码里面还体现了一点就是:final修饰的变量可以被setter方法修改至于是不是还有其他的方式可以对用final修饰的变量进行修改还有待考证把哈哈!

这是关于final的我不知道的小知识点,所以就写了一篇博客出来了。另外我再把我知道的也大方的告诉大家:

1.final修饰变量,则等同于常量,不能更改。
2.final修饰类,则类不能被继承
3.final修饰方法,则方法不能被重写。
4. final 不能修饰抽象类和借口
5.final修饰的方法可以被重载 但不能被重写
好了今天八月最后的课堂就到这里哈哈~~~~~九月你好!

转载地址:http://zrlen.baihongyu.com/

你可能感兴趣的文章
【转】信息奥赛一本通1185:单词排序(OJ题目描述有问题)
查看>>
webclient
查看>>
从百度MP3搜索结果中提取歌曲列表
查看>>
Python Set
查看>>
SWT 中实现最小化到托盘图标,并只能通过托盘的弹出菜单关闭程序
查看>>
Java Table Examples
查看>>
Java read file
查看>>
界面主线程,子线程更新主界面控件
查看>>
敲两遍引号键才出现
查看>>
欢迎使用CSDN-markdown编辑器
查看>>
剑指Offer
查看>>
五大常用算法&实例列举
查看>>
网页乱码分析
查看>>
java 线程:sleep join yield | wait notify notifyAll
查看>>
Python 包、模块 概念 from 、import 关键字
查看>>
世界各国的手机号码
查看>>
通配符与正则表达式
查看>>
c++ 与 Java 之 红黑树 哈希表 辨析
查看>>
open GL 、DirectX、open CV、 open Inventor 、cocos2dx、unity3d、3dmax辨析
查看>>
理解矩阵
查看>>