具有不明确的构造函数参数的实例对象;但C#实例呢

时间:2014-12-19 17:59:45

标签: c#

我有一个名为AlertDialogViewModel的课程,其中包含两个构造函数,一个构建Objectstring,另一个构建string

public class AlertDialogViewModel
{
    public AlertDialogViewModel(object contentObject, string title)
    {
        this.ContentObject = contentObject;
        this.Title = title;
    }

    public AlertDialogViewModel(string contentString, string title)
    {
        this.ContentString = contentString;
        this.Title = title;
    }

    public object ContentObject { get; set; }

    public string ContentString { get; set; }

    public string Title { get; set; }
}

在单元测试中,我创建了一个新实例,第一个参数为null。

    [TestMethod]
    public void Instancing_string_alert_with_null_content_throws_exception()
    {
        // Arrange
        const string title = "Unit Test";

        // Act
        var alertDialog = new AlertDialogViewModel(null, title);
    }

当我运行单元测试时,它使用将字符串作为第一个参数的构造函数。什么是编译器/运行时确定哪个是需要使用的正确构造函数?

这不会导致我的代码出现任何问题,我只是想了解为什么在将来这实际上很重要的情况下选择了构造函数。

0 个答案:

没有答案