在属性property做一些简单的验证
开发C#的程序,写到属性property时,我们可以在Set方法中做一些简单的规则验证:
如下面,Insus.NET写一个Age属性,只允许用户输入10以内的数字:
class AA { private int _Age; public int Age { get { return _Age; } set { if (value > 10) { throw new Exception("只允许10岁以下的小朋友参加。"); } _Age = value; } } }
前端,我们只管使用try... catch...来实现抛出异常:
Console.Write("请填入你的年龄: "); AA obj = new AA(); obj.Age = Convert.ToInt32(Console.ReadLine()); try { Console.WriteLine("你的年龄是: " + obj.Age); } catch(Exception ex) { Console.WriteLine(ex.Message); }
按Ctrl + F5之后:
输入小于10的数字,如7,然后按回车:
再次按Ctrl + F5,然后输入大于10的数字,如11,控制台将显示如下: