构造函数的问题 构造函数问题组件问题 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 实际上就是函数的重载,这跟普通函数的重载没有多大区别区别仅仅是构造函数是在new的时候执行的那么不带参数的构造函数,是在你执行Component1 c=new Component1()的时候执行而带参数的构造函数,是在你执行Component1 c=new Component1(container)的时候执行这样写可以让你new的时候省下许多事比如你需要给类传递一个参数如果构造函数不带参数,你就必须这样传递Component1 c=new Component1()c.container=container; 你这个例子举的没有什么实际意义,所以看不出来这两种写法到底有什么不同而如果是个sqlhelper类,我需要在new这个类的时候就要建立一个数据库连接那么如果仅仅使用不带参数的构造函数public class sqlhelper{public string connetionStr;public sqlhelper(){}public connect(){//连接数据库}}你就必须这样用:sqlhelper s=new sqlhelper();s.connetionStr=str;s.connect();而如果用带参数的构造函数,就可以这样public class sqlhelper{public sqlhelper(){}public sqlhelper(connetionStr){//建立连接}}sqlhelper s=new sqlhelper(str); 不带参数的构造函数不利于给类传递参数因为一new它就自己执行完了,等你传递完参数,想让它继续往下执行,就要手动执行一些函数而带参数的构造函数,你可以在new的同时传递进去,然后在构造函数里执行你要真正执行的逻辑(函数)这样你调用的时候只需要传入一个参数,而不必每次都去手动调用里面的函数 winfrom中 IContainer container 这个对象是干嘛用的??? 我是重载的控件.... IContainer就是谁在引用这个控件啊,这样做就可以通过xxx.Parent之类的代码来找到它的上一层控件 哦 那是不是意思是 最好还是使用这个构造函数 .这样方面使用容器的概念和 XXX.Parent的方法... 使用这个构造函数,你在new这个类的时候直接传入this,那么控件就知道是谁在引用它了否则你还需要public一个变量,并public一个方法,等new完之后,外部给变量赋值,再手动调用方法,才能把this添加进container里去 datagridview导出0开头的数字串后,开头的0没了 无法找到 PInvoke DLL“sqlceme30.dll”。 c#怎么开发微博应用 通过textbox的句柄得到并且修改其值 关于读取xml问题! 一个简单的OWC11问题。 关于资源本地化问题 关于格式化时间的问题。 当IIS应用池里最大进程设为2时,用web上传就出错的问题 远程问题 Winform调用aapt能读出应用的Icon吗? DateTimePicker选择“今天”后如何改为当前时间
区别仅仅是构造函数是在new的时候执行的
那么不带参数的构造函数,是在你执行Component1 c=new Component1()的时候执行
而带参数的构造函数,是在你执行Component1 c=new Component1(container)的时候执行这样写可以让你new的时候省下许多事
比如你需要给类传递一个参数
如果构造函数不带参数,你就必须这样传递
Component1 c=new Component1()
c.container=container;
而如果是个sqlhelper类,我需要在new这个类的时候就要建立一个数据库连接
那么如果仅仅使用不带参数的构造函数public class sqlhelper
{
public string connetionStr;
public sqlhelper()
{
}
public connect()
{
//连接数据库
}
}你就必须这样用:
sqlhelper s=new sqlhelper();
s.connetionStr=str;
s.connect();
而如果用带参数的构造函数,就可以这样public class sqlhelper
{
public sqlhelper()
{
}
public sqlhelper(connetionStr)
{
//建立连接
}
}sqlhelper s=new sqlhelper(str);
因为一new它就自己执行完了,等你传递完参数,想让它继续往下执行,就要手动执行一些函数
而带参数的构造函数,你可以在new的同时传递进去,然后在构造函数里执行你要真正执行的逻辑(函数)
这样你调用的时候只需要传入一个参数,而不必每次都去手动调用里面的函数
xxx.Parent之类的代码来找到它的上一层控件
否则你还需要public一个变量,并public一个方法,等new完之后,外部给变量赋值,再手动调用方法,才能把this添加进container里去