Java toString方法不显示,但编译代码
Java代码已编译,但不显示toString方法。我需要在子类中调用它吗?或者toString是否有不同的方式来显示实例变量Java toString方法不显示,但编译代码,java,oop,tostring,Java,Oop,Tostring,Java代码已编译,但不显示toString方法。我需要在子类中调用它吗?或者toString是否有不同的方式来显示实例变量 public class Animal { //instance variables private int numberOfLegs; private boolean sleep; //Default Constructor public Animal() { numberOfLegs = 6;
public class Animal {
//instance variables
private int numberOfLegs;
private boolean sleep;
//Default Constructor
public Animal() {
numberOfLegs = 6;
sleep = true;
}
// Constructor
public Animal(int numberOfLegs, boolean sleep){
this.numberOfLegs = numberOfLegs;
this.sleep = sleep;
}
//toString method
public String toString (int numberOfLegs, boolean sleep){
return numberOfLegs + " legs, sleep: " + sleep;
}
//walk method
void walk(){
System.out.print("walking ");
}
public static void main(String[] args) {
Animal animal1 = new Tiger();
animal1.walk();
animal1.toString(4, false);
} //end main
}// end animalclass
class Tiger extends Animal {
void walk(){
super.walk();
System.out.println("a Tiger");
}
public Tiger(){
super();
}
} //end Tiger class
toString()
返回字符串。它不执行任何显示逻辑(不同于walk()
方法,该方法打印内容但不返回任何内容)
您需要使用System.out.println()或其他方式显示它
toString()
方法也不应接受参数。你已经知道动物有多少条腿了,所以这些参数是无用的