C#编程解惑(二)
1、WinForm中我们通常调用的地址都是Debug文件夹下,如果Winform的exe程序和要调用的资源文件如图片、文本文件等都是在同一个文件夹下的话,我们调用资源的时候可以不写路径而直接写文件名即可。但是我们最好写上路径名,我们可以使用如下代码来获取文件启动的路径,代码如下,eg:
Application.StartupPath.ToString()
2、我们在使用地址拼接的时候,如果让我来写的话,可能我就会判断最后一个字符是不是\这个符号,如果是这个符号就不添加\了,否则就添加\这个符号,然后再拼接上文件名,这样我们就可以获取一个文件的完整的路径名。但是Path这个类下有一个combine方法,可以自动的去判断是不是有\这个符号,如果有在拼接的时候它就不会添加上\这个符号,否则添加。具体代码如下,eg:
string path=Path.Combine(Application.StartupPath.ToString(), "Plugins");
3、我们在发布网站或者发布类库的dll文件的时候记得要使用Release模式,那样可以精简一些代码,节省空间,提升性能。
4、c# 程序集即dll就跟java中的jar包一样。
5、只有返回值是IEnumerable类型或者是实现了IEnumberable接口的类(数组、泛型集合等)才可以使用foreach来循环便利,其他的不可以。
6、一个类继承自另外一个类,必须要有相同的构造函数,如果父类中没有默认的构造函数,子类继承的时候会报错,这个时候我们要使用base关键字来实现父类的最少一个构造函数或者给父类声明一个默认的构造函数 。
7、子类的静态构造函数先于父类的静态构造函数执行。父类的构造函数先于子类的构造函数执行。
8、一个类中如果有多个构造函数,要用下面的写法来实现,而不是使用手动的每一个都自己去写,代码如下:
public Father(string name) { Name = name; } public Father(string name, int age, string address) : this(name) { Age = age; Address = address; } public Father(string name, int age) : this(name, age, "ff") { }
浙公网安备 33010602011771号