b2c信息网

您现在的位置是:首页 > 热点事件 > 正文

热点事件

string类源码重写(string类源码解析)

hacker2022-06-12 23:16:17热点事件34
本文目录一览:1、

本文目录一览:

关于java的String类中equal方法的重写,能不能给我具体讲讲每一步是干什么的?实在感激不尽........

问题1:equals是用来判断字符串是否相同,首先会判断两个对象的引用是否相同,如果相同后面就不需要判断了,如果不同,则需要判断字符串的内容是不是相同。

问题2:value和offset看源码,解释已经很清楚了

/** The value is used for character storage. */

private final char value[];

/** The offset is the first index of the storage that is used. */

private final int offset;

问题3:这个判断当前比较的两个字符串是不是字符个数相同,如果不同就不用判断每个字符的内容了,两个字符串必然不相同

java 中string类怎么实现

ava字符串类(java.lang.String)是Java中使用最多的类,也是最为特殊的一个类,很多时候,我们对它既熟悉又陌生。

一、从根本上认识java.lang.String类和String池

首先,我建议先看看String类的源码实现,这是从本质上认识String类的根本出发点。从中可以看到:

1、String类是final的,不可被继承。public final class String。

2、String类是的本质是字符数组char[], 并且其值不可改变。private final char value[];

然后打开String类的API文档,可以发现:

3、String类对象有个特殊的创建的方式,就是直接指定比如String x = "abc","abc"就表示一个字符串对象。而x是"abc"对象的地址,也叫

做"abc"对象的引用。

4、String对象可以通过“+”串联。串联后会生成新的字符串。也可以通过concat()来串联,这个后面会讲述。

6、Java运行时会维护一个String Pool(String池),JavaDoc翻译很模糊“字符串缓冲区”。String池用来存放运行时中产生的各种字符串,

并且池中的字符串的内容不重复。而一般对象不存在这个缓冲池,并且创建的对象仅仅存在于方法的堆栈区。

Java中String类为什么不能被继承,什么叫方法被其子类重写。

String是final类,不能被继承;

子类中定义和父类中相同的方法,子类则重写了父类的方法,调用子类的该方法时是执行子类的实现,否则是执行父类的实现。

string类不可以被用来继承并重写相关方法

你好,很高兴回答你的问题。

因为String类是用final修饰的,所以是不能被继承的。

如果有帮助到你,请点击采纳。

发表评论

评论列表

  • 依疚卬妄(2022-06-12 23:36:36)回复取消回复

    ,很高兴回答你的问题。因为String类是用final修饰的,所以是不能被继承的。如果有帮助到你,请点击采纳。

  • 温人未芩(2022-06-13 10:34:44)回复取消回复

    .问题1:equals是用来判断字符串是否相同,首先会判断两个对象的引用是否相同,如果相同后面就不需要判断了,如果不同,则需要判断字符串的内容是不是相同。问题2:value和offset看源码,解释已经