【发布时间】:2016-02-07 03:32:01
【问题描述】:
我是 Java 新手,在听老师的视频讲座时遇到了问题(我正在参加在线课程),并且我在完成这项作业时遇到了问题:
创建一个 FitnessTracker 类,其中包含健身活动的数据字段、参与的分钟数、使用的卡路里和日期。该类包括获取每个字段的方法。此外,创建一个默认构造函数,自动将活动设置为“跑步”,将分钟设置为 0,使用的卡路里设置为 0,并将日期设置为当年的 1 月 1 日。将文件另存为 FitnessTracker.java。创建一个应用程序来演示每个方法是否正确工作,并将其保存为 TestFitnessTracker.java。
b.为您在练习 3a 中创建的 Fitness Tracker 类创建一个额外的重载构造函数。此构造函数接收每个数据字段的参数并适当地分配它们。将任何需要的语句添加到 TestFitnessTracker 应用程序以确保重载的构造函数正常工作,保存它,然后对其进行测试。
c。修改 Fitness Tracker 类,使默认构造函数调用四参数构造函数。将该类保存为 FitnessTracker2.java。创建一个应用程序来测试新版本的类,并将其命名为 TestFitnessTracker2.java。
我也一直在观看一些 youtube 视频,它们对理解有所帮助,但我仍然没有完全理解。 在“日期方法”旁边,我不断收到错误“修改日期的非法参数,只允许使用最终参数”,以及其他错误。 这是我到目前为止所拥有的,但我现在有点迷茫,不知道如何前进:
package javaProgramming;
import java.util.Scanner;
public class fitnessTracker {
public static void main(String[] args){
tracker trackerObject = new tracker("January 1st", "running", 0, 0);
}
}
class tracker {
public tracker(String date, String active, int mins, int cal){
Scanner input = new Scanner(System.in);
System.out.println("What day are you recording this activity for?");
public String day = input.nextLine();
System.out.println("What fitness exersise did you complete?");
public String active = input.nextLine();
System.out.println("How many minutes did you spend " + active + "?");
public int mins = input.nextInt();
System.out.println("How many calories did you burn?");
public int cal = input.nextInt();
}
public static void date(String day){
System.out.println("I did this on " + day + ".");
public static void activity(String active){
System.out.println("Today I plan on " + active);
}
public static void minutesSpent(int mins){
System.out.println("I spent " + mins + " minutes doing so.");
}
public static void caloriesUsed(int cal){
System.out.println("I burned " + cal + " calories.");
}
}
如果有人能帮我解决这个问题,我们将不胜感激!
【问题讨论】:
-
如果您想学习,请正确缩进您的代码,并使用 Java 代码格式化指南:类以大写字符开头。这可能看起来微不足道,但它很重要。
标签: java methods constructor overloading instantiation