定义名为MyTime的类其中应有三个整型成员时hour分minute秒second为了保证数据的安全性这三个成员变量应声明为私有。
为MyTime类定义构造方法以方便创建对象时初始化成员变量。
再定义diaplay方法用于将时间信息打印出来。
为MyTime类添加以下方法
* addSecond(int sec)
* addMinute(int min)
* addHour(int hou)
* subSecond(int sec)
* subMinute(int min)
* subHour(int hou)
* 分别对时、分、秒进行加减运算。
namespace _0703_面向对象
{
class MyTime
{
private int _hour;
private int _minute;
private int _second;
public int Hour
{
get { return _hour; }
set { _hour = value; }
}
public int Minute
{
get { return _minute; }
set { _minute = value; }
}
public int Second
{
get { return _second; }
set { _second = value; }
}
public MyTime(int h, int m, int s)
{
Hour = h;
Minute = m;
Second = s;
}
public void Display()//展示时间
{
Console.WriteLine("{0}时{1}分{2}秒", Hour, Minute, Second);
}
public void AddHour(int h)
{
Hour = Hour + h;
Test();
}
public void AddMinute(int m)
{
Minute += m;
Test();
}
public void AddSecond(int s)
{
Second += s;
Test();
}
public void SubHour(int h)
{
Hour -= h;
Test();
}
public void SubMinute(int m)
{
Minute -= m;
Test();
}
public void SubSecond(int s)
{
Second -= s;
Test();
}
public void Test() {
if (Second >= 60) {
Minute += Second / 60;
Second = Second % 60;
} else if (Second < 0) {
Minute += (Second / 60 - 1);
Second = Second % 60 + 60;
}
if (Minute >= 60) {
Hour += Minute / 60;
Minute =Minute % 60;
} else if (Minute < 0) {
Hour += (Minute / 60 - 1);
Minute = Minute % 60 + 60;
}
if (Hour > 24) {
Hour = Hour % 24;
}if (Hour < 0)
{
Hour = Hour % 24 + 24;
}
}
}
}