首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

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

2012-01-07 
为什么这里不抛出错误?(新手提问)usingSystemusingSystem.Collections.GenericusingSystem.Textnamespa

为什么这里不抛出错误?(新手提问)
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 "))

热点排行