java String类 this(str.value);报错The field String.value is not visible

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java String类 this(str.value);报错The field String.value is not visible相关的知识,希望对你有一定的参考价值。

public String1(char[] value) //以一个字符数组构造串
// TODO Auto-generated constructor stub
this.value = new char[value.length];//当value==null时,java抛出空对象异常
for(int i=0;i<value.length;i++)//复制数组
this.value[i] = value[i];



public String1(String str) //拷贝构造方法,赋值对象
// TODO Auto-generated constructor stub
this(str.value);

参考技术A 错误已经说明了, The field String.value is not visible
String类中的value是私有类型, 在外部不能访问.
需要给String类添加一个公有的getValue方法
public char[] getValue()
return this.value;

然后在拷贝构造函数里使用
this(str.getValue());
参考技术B 第二个方法改成如下:
public String1(String str) //拷贝构造方法,赋值对象
// TODO Auto-generated constructor stub
this(str.toCharArray());
参考技术C 既然是Copy构造函数,那么你的 public String1(String str) //拷贝构造方法,赋值对象
参数不应该是String1 str,即public String1(String1 str)吗,仔细看看噢本回答被提问者采纳

Java String类

1. equals方法,该方法定义在Object类中

    public boolean equals(Object obj) {
        return (this == obj);
    }

它是判断调用equals的引用和传进来的引用是否一致,即两个应用是否是同一个对象

结果为false

 

2. String类

String类中的equals方法。

对于String类的equals方法来说,它是判断当前字符串与传进来的字符串的内容是否一致。

 3. String s = new String(“aaa”)

 3.1

3.2 

 

 

  

以上是关于java String类 this(str.value);报错The field String.value is not visible的主要内容,如果未能解决你的问题,请参考以下文章

JAVA this关键字

Java String类

Java比较器

Java之关于This的用法

韩顺平 java笔记 第8讲 this 类变量 第9讲 类方法

Java定义学生类student