【发布时间】:2015-06-15 21:24:15
【问题描述】:
所以我有一个名为 Person 的类,看起来像这样
public class Person {
private String personName;
public String toString(){
return personName;
}
public Person(String personName){
this.personName = personName;
}
}
以及我在其中创建对象的另一个类人
public class IdanJavaTask {
public static void main(String[] args) {
Person p1 = new Person("Bob");
System.out.println("p1 : " + p1);
Person p2 = new Person("Joe");
System.out.println("p2 :" + p2);
}
}
到目前为止一切都很好,我的打印声明是
p1:鲍勃
p2:乔
现在我想创建一个新对象 p3 并将其设置为等于 p1 我的班级现在看起来像这样:
public class IdanJavaTask {
public static void main(String[] args) {
Person p1 = new Person("Bob");
System.out.println("p1 : " + p1);
Person p2 = new Person("Joe");
System.out.println("p2 :" + p2);
Person p3 = new Person (p1);
System.out.println("p3 equal to p1:" + p3.equals(p1));
}
}
当我尝试这样做时,我收到以下错误消息:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
The constructor Person(Person) is undefined
at vehicleassignment.IdanJavaTask.main(IdanJavaTask.java:13)
我想我需要向我的主(Person)类添加一个方法,但我不知道为什么或添加什么?为什么我不能将对象设置为彼此相等?
【问题讨论】:
标签: java methods compiler-errors equals