class Name{ private Name(){};
public static final Name ZS = new Name();
public static final Name LS = new Name();
public Name nextName(){
if(this==ZS)
{
return LS;
}
else
{
return ZS;
}
}
public String toString()
{
return this=="ZS"?"ZS":"LS";
}
}
上边 是我代码的一部分我想将红色的部分用匿名内部类替换,给种方法。。然后我用的是
public static final Name ZS = new Name()
{ public Name nextName(){
return LS;
}
};覆盖了子类的方法,如果是ZS 返回LS,
然后将nextName方法变成了
public Name nextName();报错,求正确方法。 作者: 李慧声 时间: 2013-11-7 15:37
abstract class Name{
private Name(){};
public static final Name ZS = new Name(){
public Name nextName() {
return LS;
}
};
public static final Name LS = new Name(){
public Name nextName() {
return ZS;//"zhangsan";
}
};
public abstract Name nextName();
public String toString()
{
//return this == "ZS" ?"ZS":"LS";-->楼主这里没报错嘛 this=="ZS",Name对象和字符串相等?