当我创建一个新类的实例时,我该怎么做,它必须得到一个参数?

时间:2013-03-21 09:32:36

标签: c#

例如:

class WebCrawler
{
    List<string> currentCrawlingSite;
    List<string> sitesToCrawl;
    RetrieveWebContent retwebcontent;

    public WebCrawler()
    {
    }
}

当我WebCrawler = new WebCrawler(parameter here) ...

4 个答案:

答案 0 :(得分:4)

将另一个构造函数添加到您的类中;

public WebCrawler(parameter here)
{
}

之后,你需要删除无参数的一个构造函数,这样人们就可以创建你的类的实例而不提供任何参数。

您可以像

一样创建它的实例

WebCrawler w = new WebCrawler(parameter here);

您可以阅读Instance Constructors

的更多信息

这是DEMO

答案 1 :(得分:2)

使用您希望由用户提供的参数创建构造函数:

public WebCrawler(string param1, int param2)
{
}

当添加任何类似的构造函数时,默认的(无参数)不再可用,除非你自己编写:

public WebCrawler()
{
}

只需将其删除,如果不提供这些参数,用户将无法创建您的类实例对象。您也可以使用相同的设置无参数构造函数privateprotected

Instance Constructors (C# Programming Guide)

答案 2 :(得分:2)

您可以创建无参数构造函数private ...

private WebCrawler()
{
}

意思是没有消费者/来电者能够调用它。

然后你只能使用一个构造函数:

public WebCrawler(string something)
{
}

答案 3 :(得分:1)

添加另一个接受参数的构造函数:

public WebCrawler(string someParameter)
{

}