读书人

为什么这里不抛出异常?(新手提问)

发布时间: 2012-01-07 21:41:55 作者: rapoo

为什么这里不抛出错误?(新手提问)
using System;
using System.Collections.Generic;
using System.Text;

namespace Example11_1
{
class Program
{
static void Main(string[] args)
{
Farmer farmer = new Farmer();
farmer.Name = "zhang ";
farmer.Age = 26;
Console.WriteLine(farmer.Age);
Console.WriteLine(farmer.Name);




Console.ReadLine();
}
}
class Farmer
{
public Farmer()
{
}
public Farmer(string m_Name)
{
name = m_Name;
}
//姓名字段
string name = string.Empty;
//MAX字段
const int max = 150;
//MIN字段
const int min = 0;
//AGE字段
int age = 0;
//MAX属性
public int Max
{
get
{
return max;
}
}
//MIN属性
public int Min


{
get
{
return min;
}
}
//AGE属性
public int Age
{
get
{
return age;
}
set
{
if ((value > min) && (value < max))
{
age = value;
}
else
{
Exception ex = new Exception( "设置的值超出范围 ");
throw (ex);
}
}
}
//NAME属性
public string Name
{
get
{
return name;
}
set


{
if ((value != "Liu "))
{
name = value;
}
else
{
Exception ex = new Exception( "姓名错误 ");
throw (ex);
}
}
}
}
}

/*
我在这儿设置的是姓名不等于Liu即抛出姓名错误这个错误,但是实际测试中,并没有抛出,请问一下这是为什么呢?
谢谢!
*/

[解决办法]
if ((value != "Liu "))
{
name = value;
}
else
{
Exception ex = new Exception( "姓名错误 ");
throw (ex);
}
这段代码好像是等于Liu才抛出错误吧
[解决办法]
if ((value != "Liu ")) 改为 if ((value == "Liu "))

读书人网 >C#

热点推荐