1.C#编程学习——关于try和catch使用
源代码
如下:
//-----------------------------------------------
// CsDateProperties.cs ?2001 byCharles Petzold
//-----------------------------------------------
usingSystem;
classCsDateProperties
{
publicstaticvoid Main()
{
Date mydate = newDate();
try
{
mydate.Month = 8;
mydate.Day = 29;
mydate.Year = 2001;
Console.WriteLine("Day of year = {0}", mydate.DayOfYear);
}
catch (Exceptionexc)
{
Console.WriteLine(exc);
}
}
}
classDate
{
// Fields
int year;
int month;
int day;
staticint[] MonthDays = newint[]{ 0, 31, 59, 90, 120, 151,
181, 212, 243, 273, 304, 334 };
// Properties
publicint Year
{
set
{
if (value < 1600)
thrownewArgumentOutOfRangeException("Year");
else
year = value;
}
get
{
return year;
}
}
publicint Month
{
set
{
if (value < 1 || value > 12)
thrownewArgumentOutOfRangeException("Month");
else
month = value;
}
get
{
return month;
}
}
publicint Day
{
set
{
if (value < 1 || value > 31)
thrownewArgumentOutOfRangeException("Day");
else
day = value;
}
get
{
return day;
}
}
publicint DayOfYear
{
get
{
return MonthDays[month - 1] + day +
(month > 2&& IsLeapYear(year) ? 1 : 0);
}
}
// Method
publicstaticbool IsLeapYear(int year)
{
return (year % 4 == 0) && ((year % 100 != 0) || (year % 400 == 0));
}
}
其中代码中使用
Date mydate = newDate();来构造Date对象。