【发布时间】:2014-02-11 22:16:03
【问题描述】:
我已经为这项任务工作了一段时间,但我碰到了一堵墙,我想不出办法。作业的目标可以在这里阅读,省去我打字或复制的麻烦。
我无法弄清楚作业的输出部分。因为必须以这种特定的方式设置类,而不仅仅是执行特定的功能。尽管作业没有说明 toString() 或类似方法,但我开始编写一个,但意识到我不能使用字段、小时、分钟和秒,因为它们超出了范围。如果我试图将它们放在 TimeTest 程序中,我将没有权限,因为它们是私有的。 (他们必须是私人的。)
我怎样才能让这些转换后的单位以小时:分钟:秒的形式打印出来?
以下是我当前的代码:
public class Time
{
private long hour;
private long minute;
private long second;
public Time()
{
long compTime = System.currentTimeMillis();
this.setTime(compTime);
}
public Time(long hour, long minute, long second)
{
this.hour = hour;
this.minute = minute;
this.second = second;
}
public Time(long time)
{
this.setTime(time);
}
//three get methods
public long getHour()
{
return this.hour;
}
public long getMinute()
{
return this.minute;
}
public long getSecond()
{
return this.second;
}
//setTime method
public void setTime(long elapseTime)
{
this.hour = (elapseTime/36000000);
this.minute = ((elapseTime - (this.hour * 36000000))/60000);
this.second = ((elapseTime - (this.minute * 60000))/1000);
}
public String printFormat()
{
//it wouldn't let me name it toString() so I named it printFormat() instead.
}
}
【问题讨论】:
-
你是什么意思它不会让你?
-
要么覆盖 toString() 要么使用 getter。完成。
-
其实这个功课已经有人做过了。 DUP:stackoverflow.com/questions/19612739/…
标签: java class printing private