定义一个时钟类,将setTime()和showTime)声明为public,对外提供两个接口;将hour、minute、second声明为 private;通过主函数中对类的对象的调用,实现可以设置和显示时间
时间: 2024-10-09 14:06:27 浏览: 34
为了创建一个简单的时钟类,你可以按照以下步骤定义:
```java
public class Clock {
// 将小时、分钟和秒私有化,保护变量的直接访问
private int hour;
private int minute;
private int second;
// 公共方法,用于设置时间和显示时间
public void setTime(int h, int m, int s) {
setHour(h);
setMinute(m);
setSecond(s);
}
public void showTime() {
System.out.printf("当前时间是 %02d:%02d:%02d", getHour(), getMinute(), getSecond());
}
// 私有辅助方法,用于获取和设置单独的时间部分
private void setHour(int hour) {
if (hour >= 0 && hour < 24) {
this.hour = hour;
} else {
throw new IllegalArgumentException("小时值应介于0到23之间");
}
}
private void setMinute(int minute) {
if (minute >= 0 && minute < 60) {
this.minute = minute;
} else {
throw new IllegalArgumentException("分钟值应介于0到59之间");
}
}
private void setSecond(int second) {
if (second >= 0 && second < 60) {
this.second = second;
} else {
throw new IllegalArgumentException("秒数值应介于0到59之间");
}
}
// 主函数示例(这里通常不在类中,而是作为独立程序的一部分)
public static void main(String[] args) {
Clock clock = new Clock();
// 设置时间
clock.setTime(12, 30, 0);
// 显示时间
clock.showTime();
// 可以继续修改时间并显示
clock.setTime(13, 0, 0); // 更改为下午1点
clock.showTime();
}
}
```
在这个例子中,`Clock` 类包含了三个私有的整型变量 `hour`, `minute`, 和 `second`,以及两个公共方法 `setTime()` 和 `showTime()`。`setTime()` 方法接受小时、分钟和秒作为参数,并通过内部的私有方法进行验证和设置。`showTime()` 方法则简单地打印出当前的时间。
在 `main` 函数中,我们实例化了一个 `Clock` 对象,并演示了如何通过 `setTime()` 设置时间和 `showTime()` 显示时间的过程。
阅读全文