Java uml图中的方法
我有这个uml图,我不理解我从朋友那里得到的代码的一部分。我不懂“等于”的方法。。它的用途是什么?我为什么要使用它?Java uml图中的方法,java,methods,uml,Java,Methods,Uml,我有这个uml图,我不理解我从朋友那里得到的代码的一部分。我不懂“等于”的方法。。它的用途是什么?我为什么要使用它? 这是UML: 但我不明白代码的某些部分 这是迄今为止代码的一部分: class Artist { private String name; Artist(String name) { // constructor this.name = name; } public String getName() { // name getter return nam
这是UML: 但我不明白代码的某些部分 这是迄今为止代码的一部分:
class Artist {
private String name;
Artist(String name) { // constructor
this.name = name;
}
public String getName() { // name getter
return name;
}
public String toString() { // toString
return name;
}
}
class CD {
private String title;
private Artist name;
CD(String title) {
this.title = title;
}
CD(String title, Artist name) {
this.title = title;
this.name = name;
}
public Artist getArtist() {
return name;
}
public String getTitle() {
return title;
}
public String toString() {
return title + " by " + getArtist();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
CD other = (CD) obj;
if (name == null) {
if (other.name != null)
return false;
} else if (!name.equals(other.name))
return false;
if (title == null) {
if (other.title != null)
return false;
} else if (!title.equals(other.title))
return false;
return true;
}
}类图忽略了CD从提供
equals
方法的常规对象继承的内容。正确地说,它应该是这样的
(我的Java知识几乎为空。)Equals方法是一个包装类,用于执行数字比较。用外行术语来说,它就像比较两个数字。例x=10,y=20是x=y吗?答案是否定的。同样在java中,如果x=y else返回false,那么equals方法将返回true。 在您的代码中,他正在重写方法equals,以自定义代码中的比较。他正在比较两个CD对象,如果它们相等,则返回true,否则返回false。读取。可能重复的