【Java面试题】3 Java中使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变?超详细解析...
/*
* 问题:使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变
* 答:
* 使用final关键字修饰一个变量时,是指引用变量不能变,引用变量所指向的对象中的内容还是可以改变的。
*/
public class Test10 {
// final修饰基本类型的变量
public static final char CHAR = '中';
// final修饰引用类型的变量
public static final StringBuffer a = new StringBuffer("StringBuffer");
public static void main(String[] args) {
// 编译报错,引用不能变
// a = new StringBuffer("hehe");
// 引用变量所指向的对象中的内容还是可以改变的
a.append("xxx");
}
public static int method1(final int i) {
// i = i + 1;// 编译报错,因为final修饰的是基本类型的变量
return i;
}
// 有人在定义方法的参数(引用变量)时,可能想采用如下的形式来阻止方法内部修改传进来的参数对象,
// 实际上,这是办不到的,在该方法内部任然可以增加如下代码来修改参数对象
public static void method2(final StringBuffer buffer) {
buffer.append("buffer");// 编译通过,因为final修饰的是引用类型的变量
}
}
转载于:https://www.cnblogs.com/pypua/articles/8553950.html
【Java面试题】3 Java中使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变?超详细解析...相关推荐
- 使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变?
使用final关键字修饰一个变量时,是指引用变量不能变,引用变量所指向的对象中的内容还是可以改变的.
- 用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变
使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变 答: 使用final关键字修饰一个变量时,是指引用变量不能变,引用变量所指向的对象中的内容还是可以改变的. 代码 public ...
- js基础知识:es6中,当对象中的key名称为一个变量时,需要用`[]`括起来
es6中,当对象中的key名称为一个变量时,需要用[]括起来
- 【java面试题】Java面试宝典2013版(超长版),抽象类是否可继承实体类
一. Java基础部分......................................................................................... ...
- Java final关键字修饰变量Test
使用 final 关键字修饰一个变量时,是指引用变量不能变,引用变量所指向的对象中的内容还是可以改变的. package com.test; /*** final修饰一个变量练习* @author M ...
- final关键字_深入分析Java中的final关键字
Java中被final修饰的变量与普通变量有何区别?被final修饰的变量不可更改.被final修饰的方法不可重写是怎样做到的?带着疑问我们一点点拨开云雾. 一.final的内存定义及规则 对于fin ...
- java取出字符串中的后四位_[原]Java面试题-将字符串中数字提取出来排序后输出...
[Title][原]Java面试题-将字符串中数字提取出来排序后输出 [Date]2013-09-15 [Abstract]很简单的面试题,要求现场在纸上写出来. [Keywords]面试.Java. ...
- 浅谈Java中的final关键字
浅析Java中的final关键字 谈到final关键字,想必很多人都不陌生,在使用匿名内部类的时候可能会经常用到final关键字.另外,Java中的String类就是一个final类,那么今天我们就来 ...
- 浅析Java中的final关键字
浅析Java中的final关键字 谈到final关键字,想必很多人都不陌生,在使用匿名内部类的时候可能会经常用到final关键字.另外,Java中的String类就是一个final类,那么今天我们就来 ...
最新文章
- ZeroC ICE java异步实现方式(ami/amd)
- python监听鼠标事件_Python中使用PyHook监听鼠标和键盘事件实例
- linux备份目录命令tar,Tar命令备份还原Linux系统
- Bootstrap页面布局17 - BS选项卡
- Java多线程学习(二)
- 为什么列存储能够大幅度提高数据的查询性能?
- UML之用例图箭头方向
- 第四季-专题19-I2C驱动程序设计
- php全表搜索,搜索整个表? PHP MySQL
- 【全网最全】Python Package Installer (pip)镜像源使用
- JS函数传参是传值还是传引用
- 亚马逊买家多账号如何运行管理?
- java8的stream写法实现去重
- c# webbrowser html5,C#设置WebBrowser IE浏览器版本
- FFMPEG命令汇总
- Java编译成功但是运行不成功的原因
- 阿里云弹性计算技术专家樊毅伟:云上成本优化实践
- 转:结构化风险模型与业绩归因
- 大数据开发岗位的几个方向
- ofdm 迭代限幅 matlab,ofdm限幅法matlab的程序
热门文章
- html table相关标签和属性
- ASP.NET 的数据绑定,DataList,Repeater 的绑定示例
- Linux下Minigui开发环境的搭建(PC+S3C2440
- 在Mac下安装使用OpenCV
- hadoop1.2.1伪分布模式安装教程
- 在windows下使用llvm+clang
- golang函数后的 {
- MySQL第9天:MySQL索引优化分析之join查询
- C++中#if 0 ... #endif的用法
- stm32f10x_it.c 定义的程序列表模板(stm32f103x_it.c中放的是中断的空函数)