请问java中equals(),toString()怎么重写?

来源:百度知道 编辑:UC知道 时间:2024/05/16 06:01:23
原题目:
用 QingApple类继承Apple类并且在子类QingApple中重写equals()和
toString()方法,并且功能要增加
,所以我就增加了delicious这个特点,但是总是有错误
希望哪位高手能够帮我解决这个燃眉之急的问题!
虽然有点麻烦,但希望哪位好心人帮忙看一下下面这个程序:
class Apple{
private String color;
private boolean ripe;
public Apple(String aColor,boolean isRipe){
color=aColor;
ripe=isRipe;
}
public void setColor(String aColor){
color=aColor;
}
public void setRipe(boolean isRipe){
ripe=isRipe;
}
public String getColor(){
return color;
}
public boolean getRipe(){
return ripe;
}
public String toString(){
if(ripe)
return("A ripe"+color+"apple");
else
return("A not so ripe"+color+"apple");
}

}
class QingApple extends Apple{
public boolean delicious;
private QingApple(String aColor,boolean isRip

下面是修改好的 你对比看一下两个程序有什么不同~
错误点有:你构造方法私有了,外面是不可以调用这个构造的; toString重写的有点问题
class Apple {
private String color;
private boolean ripe;

public Apple(String aColor, boolean isRipe) {
color = aColor;
ripe = isRipe;
}

public void setColor(String aColor) {
color = aColor;
}

public void setRipe(boolean isRipe) {
ripe = isRipe;
}

public String getColor() {
return color;
}

public boolean getRipe() {
return ripe;
}

public String toString() {
if (ripe)
return ("A ripe " + color + " apple ");
else
return ("A not so ripe " + color + " apple ");
}

}

class QingApple extends Apple {
public boolean delicious;

public QingApple(String aColor, boolean isRipe, boolean isDelicious) {
super(aColor, isRipe);
delicious