首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Java String类

Java String类

作者头像
SakuraTears
发布2022-01-13 14:56:22
发布2022-01-13 14:56:22
3970
举报

使用C++的string可以直接用str[i]来得到字符串对应i位置的字符,但是Java的String必须使用get()方法来得到i位置所对应的字符。 然后我就想既然不让用[]的方式来获取,那么get()方法里面是使用什么方法来get的呢。 然后打开了Java String类的源码发现String是使用一个char数组来保存,然后get()方法中就直接返回char[i]来寻址。

然后我继续往下看发现了String的几个构造方法,其中String为参数的构造方法中写的是 this.value = original.value; 但是前面的char[] value是私有属性,这个original为何能直接调用私有属性。

Java中private表示该属性或方法只能在该类中被调用,那么就是说如果这个对象是该类实例化出来的就可以在该类中调用该类的私有属性。

为了验证这个想法我写了一个类来验证:

代码语言:javascript
复制
public class Test {
    private char[] value;

    public Test(Test test) {
        this.value = test.value;
    }
}

果然没有报错。

如有错误欢迎指正!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021年05月25日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档