博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
如何理解String类的不可变?
阅读量:4212 次
发布时间:2019-05-26

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

String类的解析

1:String类被final修饰符锁修饰,代表String类一旦声明,就不可被改变;这里的不可变是引用地址不可变,而非指向的内容不可变,下面一张图来理解一下:

在这里插入图片描述
再来看一下String类的源码:

public final class String implements Serializable, Comparable
, CharSequence {
private final char[] value; private int hash; private static final long serialVersionUID = -6849794470754667710L; private static final ObjectStreamField[] serialPersistentFields = new ObjectStreamField[0]; public static final Comparator
CASE_INSENSITIVE_ORDER = new String.CaseInsensitiveComparator(); public String() {
this.value = "".value; } public String(String var1) {
this.value = var1.value; this.hash = var1.hash; } 省略....

故被String修饰的类不可被继承;

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

你可能感兴趣的文章
材料与工程学科相关软件
查看>>
windows 下AdNDP 安装使用
查看>>
Project 2013项目管理教程(1):项目管理概述及预备
查看>>
ssh客户端后台运行
查看>>
【React Native】把现代web科技带给移动开发者(一)
查看>>
【GoLang】Web工作方式
查看>>
Launch Sublime Text 3 from the command line
查看>>
【数据库之mysql】mysql的安装(一)
查看>>
【数据库之mysql】 mysql 入门教程(二)
查看>>
【HTML5/CSS/JS】A list of Font Awesome icons and their CSS content values(一)
查看>>
【HTML5/CSS/JS】<br>与<p>标签区别(二)
查看>>
【HTML5/CSS/JS】开发跨平台应用工具的选择(三)
查看>>
【心灵鸡汤】Give it five minutes不要让一个好主意随风而去
查看>>
【React Native】Invariant Violation: Application AwesomeProject has not been registered
查看>>
【ReactNative】真机上无法调试 could not connect to development server
查看>>
【XCode 4.6】常用快捷键 特别是格式化代码ctrl+i
查看>>
【iOS游戏开发】icon那点事 之 实际应用(二)
查看>>
【iOS游戏开发】icon那点事 之 图标设计(三)
查看>>
【IOS游戏开发】之测试发布(Distribution)
查看>>
【IOS游戏开发】之IPA破解原理
查看>>