01 try-catch看出错位置和异常堆栈:
try
{
........
}
catch(Exception ex)
{
Console.WriteLine("数据错误:"+ex.Message+"异常堆栈:"+ex.StackTrace);
}
02自己定义抛出的异常
static string GetAge(int age)
{
if(age>0&&age<100)
{
return "正常人";
}
else
{
throw new Exception("不是人类");
}
}
使用时:
try
{
string str=GetAge(200)
}
catch(Exception ex)
{
Console.WriteLine("数据异常:"+ex.Message);
}
此时显示为:数据异常:不是人类
03索引器
class Person
{
private string FirstName="one";
private string SecondName="two";
public string this[int index]//string索引器的数据类型,this是索引器特殊的名称。
{
get
{
if(index==1)
{
return value;
}
else if
{
return SecondName;
}
else
{
throw new Exception("错误的序号");
}
}
set
{
if(index==1)
{
FirstName=value;
}
else if
{
SecondName=value;
}
else
{
throw new Exception("错误的序号");
}
}
}
}
使用时:
static void Main(string[] args)
{
Person p1=new Person();
pi[1]="小明";
Console.WriteLine(p1[1]+p1[2]);
}
结果: