簡體   English   中英

我怎么知道對象完全像obj1 = obj2一樣被改變了?

[英]How can I know that object is changed totally like obj1 = obj2?

我的語言是C#。

obj1.Value = "test";

如果對象值如此改變,則易於處理。 我可以將事件代碼放在Name Property Set中。

Class obj1 = new Class("string1");
obj1  = new Class("string1");

當像這樣的賦值改變對象時,我怎么知道並處理它?

我想限制名稱長度,它受另一個屬性“長度”的限制。

我有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,但新類(“abcde”)的長度是5.(它可以通過編碼具有不同的值,但在我的情況下長度為5)

我該如何解決?

您可以在構造函數中檢查字符串的長度。 如果長度超過限制,則可以拋出新的異常。 在對象啟動方面,您可以使用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");
        }
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM