当前位置: 首页 > news >正文

大理建设工程信息网站黄石seo

大理建设工程信息网站,黄石seo,农产品电商网站建设,外包加工网官网外发加工是真的吗1 问题 如何理解“String是不可变的,但是可以变”? 2 方法 (1)String的不可变特性体现在内容和长度 首先在idea中点开查看String这个类是如何定义的 可以看到这样一行代码:private final char value[]; 正是因为这个数…

1 问题

如何理解“String是不可变的,但是可以变”?

2 方法

(1)String的不可变特性体现在内容和长度

首先在idea中点开查看String这个类是如何定义的

4fc22f34cb8c9b950b62555b4c51a183.png

可以看到这样一行代码:private final char value[];

正是因为这个数组属性形成了String的不可变特性;

内容不可变是因为用private修饰的属性只能在String类的内部才能被访问

长度不可变是因为用final修饰的char[],由于数组创建时必须指定长度,一旦确定不能改变。且又有final修饰,所以数组的地址引用也不可以变。

(2)String可变是可以通过反射的机制去操作String对象中value属性的值;

import java.lang.reflect.Field;
public class Test01 {
   public static void main(String[] args) throws NoSuchFieldException, IllegalAccessException {
       String s = "abc";
       System.out.println(s);
       //反射String类
       Class clazz = String.class;
       //找到私有属性
       Field field = clazz.getDeclaredField("value");
       field.setAccessible(true);
       //获取私有属性的值
       char[] value = (char[]) field.get(s);
       value[0]='1';
       value[1]='2';
       value[2]='3';
       System.out.println(s);
   }
}

运行代码后,打印第二次s的时候,输出的就是已经修改过后的"123"

3 结语

针对“String是不可变的,但是可以变”的问题,提出了实验的方法,通过反射机制编写相应的代码实验,证明方法是有效的,未来可以继续研究更多Java中关于反射机制的问题。

http://www.yidumall.com/news/26799.html

相关文章:

  • 以春天为主题的网站建设资源百度网盘app下载安装 官方下载
  • 宝安区城市建设局网站企业所得税优惠政策
  • 广元网站建设工作室百度快照收录
  • 关于美食html网页设计实例代码西安优化外
  • 购物网站 后台模板登录百度
  • 每日聚划算优惠网站怎么做的优秀软文营销案例
  • 宁波网站建设工作全网推广哪家正宗可靠
  • 江门网站制作培训学校如何联系百度客服
  • h5+css3+网站开发实例360优化大师安卓手机版下载安装
  • 龙岗商城网站建设个人网站设计方案
  • 网站建设代理公司站长
  • 网站建设 项目背景企业培训内容
  • 易搜网站建设如何进行搜索引擎优化
  • 义乌网站建设制作商网络营销案例100例
  • 携程旅行网站建设分析广州推广seo
  • 怎样开通网站百度指数怎么算
  • 西充县住房和城乡规划建设局网站广州做网站的公司哪家好
  • 大型网站怎么做优化武汉搜索推广
  • 遵义住房和城乡建设厅网站网络销售靠谱吗
  • wordpress 修改仪表盘公司seo是指什么意思
  • 郑州英文网站建设最好用的搜索引擎排名
  • 移动端和桌面端是什么意思青岛seo结算
  • 网站建设主要由哪几个部分组成大数据精准营销系统
  • 网站开发费用成本表深圳互联网公司50强
  • wordpress 倡萌 相册seo网站关键词优化方法
  • discuz 做门户网站备案域名交易平台
  • 小企业网站建设收费营销方法
  • 网站文字编辑怎么做互联广告精准营销
  • 洛龙区网站制作建设费用宁波seo优化
  • 北京专门做网站的认识网络营销