java - 为什么没有整数输出

标签 java netbeans

有谁知道为什么我没有得到输出的实际整数...我得到 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/

相关文章:

java - 它是什么意思(NetBeans,编译警告)?

java - 使用 Date.parse(dateString) 给定日期的毫秒数是错误的

java - TestNG 与 DataProvider 并行执行

java - 将 Tomcat 7 升级到 8 后,Netbeans 不会添加新服务器

java - 如何从 Access JDBC ODBC 数据库的表中获取 java 中的行数

java - Java的控制台输入大量数据

visual-studio-2008 - 是否有适用于 Netbeans 的 Visual Studio 2008 键盘映射配置文件?

java - AsyncTask 在运行期间不显示对话框

java - 是否可以在执行另一个 java 应用程序期间创建 java applet

java - 如何使用 Fiddler 避免 JAVA 证书警告