我的语言是C#。
obj1.Value = "test";
如果对象值改变如此,则易于处理。 我可以将事件代码放在Name Property Set中。
但是
Class obj1 = new Class("string1");
obj1 = new Class("string1");
当像这样的赋值更改对象时, 我怎么知道并处理它?</ p>
我想限制名称长度,它受到另一个属性的限制&#34;长度&#34;。
我有3个构造函数。
Class(string value);
Class(int length);
Class(int length, string value);
和2个属性。
.Value
.Length
我像这样做了obj1
Class obj1 = new Class(3, "ab")
我的问题是这个。
obj1 = new Class("abcde")
我想限制值长度3但新类的长度(&#34; abcde&#34;)是5。 (它可以通过编码具有不同的值,但在我的情况下长度为5)
我该如何解决?
答案 0 :(得分:0)
您可以在构造函数中检查字符串的长度。如果长度超过限制,则可以抛出新的异常。 在对象启动方面,您可以使用try catch块来检查对象是否正确启动。 例如:
class Class
{
public Class(string string1)
{
if(string1.Length > 10)
throw new Exception("Length Exceeded than limit");
}
}
class Program
{
static void Main()
{
Class obj;
try
{
obj = new Class("stri");
}
catch
{
MessageBox.Show("Error");
}
}
}