有谁知道为什么我没有得到输出的实际整数...我得到 WorkOut@1261281792。我知道这是一件小事,但无法弄清楚。这是我的 3 个类(class):
public class WorkOut1 {
public static void main(String [] args) {
Exercise tuesWorkout = new Exercise (10, 50);
PullUps tuesPullUps = new PullUps (10, 50);
System.out.println("This Tuesday our workout will consist of this many minutes and reps:");
System.out.println(tuesWorkout);
}
}
引体向上类(class)
public class PullUps extends Exercise {
private static int barHeight;
public PullUps (int min, int reps) {
super(min, reps);
barHeight = 6;
}
}
练习课
public class Exercise {
private static int min;
private static int reps;
//Constructor
public Exercise(int min,int reps) {
this.min = min;
this.reps = reps;
}// end constructor
public static int howManyMin() {
return min;
}//end method howmanyMin()
public static int howManyReps() {
return reps;
}//end method howmanyReps()
}//end class
最佳答案
当您调用要打印的对象时,将调用该对象的 toString() 方法,在本例中它将继承自 Object 类(这是一个所有类都继承自的 Java 类),因为您还没有在 Exercise 类中定义了一个 toString() 方法。因此,您将获得对象名称 + 对象的哈希表示形式。一种解决方法是在要打印的对象(在本例中为练习)中创建一个 toString 方法,该方法返回您要打印的字符串。
public String toString() {
return(min + ", " + reps);
}
另一种选择是打印您要在主类中打印的属性的访问器函数的结果。
System.out.println(tuesWorkout.howManyMin() + ", " + tuesWorkout.howManyReps());
关于java - 为什么没有整数输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32191510/