(1)修改上次建立的时间类 对每个成员变量,增加getter与setter,在setter中进行数据检查, 如果数据不合理,应给抛出异常信息。 (2)创建两个对象,使用setter为对象设置值,并按6个数位 hh:mm:ss (2个表示小时,2个表示分钟、2个表示秒)输出相 关信息。 (1)修改上次建立的时间类增加以下成员 公有的无参构造方法,分别设置小时、分钟和秒数为0。 公有的有参构造方法,它包含三个整型参数,用它们来设置时间。 公有的有参构造方法,它包含二个整型参数,用它们来设置小时 和分钟,秒数被设置为0。 (2) 在主方法中完成以下功能: 使用无参构造方法创建时间类对象time1,显示对象的相关信息。 使用三个参数的有参构造方法创建时间类对象time2,显示对象的 相关信息。 使用二个参数的有参构造方法创建时间类对象time3,显示对象的 相关信息。java
时间: 2023-07-15 09:12:29 浏览: 69
以下是修改后的时间类代码:
```java
public class Time {
private int hour;
private int minute;
private int second;
public Time() {
this.hour = 0;
this.minute = 0;
this.second = 0;
}
public Time(int hour, int minute, int second) {
setHour(hour);
setMinute(minute);
setSecond(second);
}
public Time(int hour, int minute) {
setHour(hour);
setMinute(minute);
this.second = 0;
}
public int getHour() {
return hour;
}
public void setHour(int hour) {
if (hour < 0 || hour > 23) {
throw new IllegalArgumentException("Invalid hour value: " + hour);
}
this.hour = hour;
}
public int getMinute() {
return minute;
}
public void setMinute(int minute) {
if (minute < 0 || minute > 59) {
throw new IllegalArgumentException("Invalid minute value: " + minute);
}
this.minute = minute;
}
public int getSecond() {
return second;
}
public void setSecond(int second) {
if (second < 0 || second > 59) {
throw new IllegalArgumentException("Invalid second value: " + second);
}
this.second = second;
}
@Override
public String toString() {
return String.format("%02d:%02d:%02d", hour, minute, second);
}
}
```
以下是在主方法中的应用:
```java
public class Main {
public static void main(String[] args) {
Time time1 = new Time();
System.out.println("Time 1: " + time1);
Time time2 = new Time(12, 30, 45);
System.out.println("Time 2: " + time2);
Time time3 = new Time(9, 15);
System.out.println("Time 3: " + time3);
}
}
```
输出结果:
```
Time 1: 00:00:00
Time 2: 12:30:45
Time 3: 09:15:00
```