Java 为什么没有整数输出

Java 为什么没有整数输出,java,netbeans,Java,Netbeans,有人知道为什么我没有得到输出的实际整数吗。。。我明白了WorkOut@1261281792. 我知道这是件小事,但我想不出来。以下是我的三门课: public class WorkOut1 { public static void main(String [] args) { Exercise tuesWorkout = new Exercise (10, 50); PullUps tuesPullUps = new PullUps (1

有人知道为什么我没有得到输出的实际整数吗。。。我明白了WorkOut@1261281792. 我知道这是件小事,但我想不出来。以下是我的三门课:

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);
    }
} 
托举类

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

您不想打印实际的
tuesWorkout
对象本身

您要执行以下操作:

System.out.println(tuesWorkout.howManyReps())

这将为您提供代表的数量

然后,您必须致电您的
getter
获取
min
,以了解该训练有多少
min


只需调用
System.out.println(tuesWorkout)
就像打印实际对象本身,这对我们来说没有实际意义。

您不想打印实际的
tuesWorkout
对象本身

您要执行以下操作:

System.out.println(tuesWorkout.howManyReps())

这将为您提供代表的数量

然后,您必须致电您的
getter
获取
min
,以了解该训练有多少
min


只需调用
System.out.println(tuesWorkout)
就像打印实际对象本身,这对我们来说没有实际意义。

当调用要打印的对象时,对象的toString()方法被调用,在这种情况下,它将从对象类继承(这是一个Java类,所有类都从该类继承)因为您尚未在Exercise类中定义toString()方法。因此,您将获得对象名+对象的哈希表示。一种修复方法是在要打印的对象(在本例中是练习)中创建一个toString方法,该方法返回您想要打印的字符串

public String toString() {
    return(min + ", " + reps);
}
另一个选项是打印要在主类中打印的属性的访问器函数的结果

System.out.println(tuesWorkout.howManyMin() + ", " + tuesWorkout.howManyReps());

调用要打印的对象时,会调用该对象的toString()方法,在本例中,该方法将从对象类继承(这是一个Java类,所有类都从该类继承),因为您尚未在练习类中定义toString()方法。因此,您将获得对象名+对象的哈希表示。一种修复方法是在要打印的对象(在本例中是练习)中创建一个toString方法,该方法返回您想要打印的字符串

public String toString() {
    return(min + ", " + reps);
}
另一个选项是打印要在主类中打印的属性的访问器函数的结果

System.out.println(tuesWorkout.howManyMin() + ", " + tuesWorkout.howManyReps());

这就是你应该得到的。您要求“打印”出Workout1类的实际实例。这就是你得到的。如果你想打印,例如,销售代表,你想按照
System.out.println(tuesWorkout.howManyReps())
的思路做一些事情。这就是你应该得到的。您要求“打印”出Workout1类的实际实例。这就是你得到的。如果你想打印,例如,Rep,你想按照
System.out.println(tuesWorkout.howManyReps())
的思路做一些事情。此外,如果目标是能够打印类的自定义格式,你可能需要考虑将它们的
公共字符串重写为字符串()
方法。啊,是的。一个更好的主意。此外,如果目标是能够为类打印自定义格式,您可能需要考虑重写它们的
公共字符串toString()
方法。啊,是的。一个更好的主意谢谢Adrian。。。这是一个很大的帮助。谢谢阿德里安。。。这是一个很大的帮助。