1
10
这个
线程问题与此无关。这种混乱可能是因为大多数静态成员都是通过线程安全实现的,而静态成员不能(!)被召唤
|
2
8
完全是个神话。只要让你的同事检查生成的il,让他解释为什么它们是相同的,无论你添加
是你想要达到的目标。你的同事好像在说 总是 参考私人领域,这在我看来是不明智的。通常您希望访问 公众的 属性,即使在类内,因为getter可以修改该值(例如,当列表为空时,list类型的属性可能返回新的列表实例,以避免在访问该属性时出现空引用异常)。 |
3
4
我个人的“最佳实践”是永远使用这个。是的,这是多余的,但是当你考虑多线程应用程序时,从第一眼看到实例的状态被更改或检索到的地方,这是一个很好的方法。 |
4
3
问问你的同事为什么他认为这些建议是最佳实践可能会有帮助?人们常常引用最佳实践“规则”,这些规则是他们在没有真正理解实践背后的原因的情况下从某个地方学到的。 正如lucero所说,除非()存在名称冲突,否则不需要“this”。然而,有些人喜欢在不严格要求的情况下包含“this”,因为他们认为它增强了可读性/更清楚地显示了程序员的意图。在我看来,这是个人喜好的问题,而不是别的。 至于你“bar”方法中的“坏主意”:你的同事可能会认为这种坏做法是因为以下原因:如果“a”的setter方法被更改为有一些副作用,那么 A=A; 也会产生这种副作用, a a= a; 只设置私有变量。在我看来,最佳实践是意识到两者之间的差异,而不是偏爱彼此。 最后,“线程问题”是无稽之谈-afaik“this”与线程无关。 |
5
2
数字2是一个神话,很容易被揭穿提到自动属性。 Automatic properties 允许您定义不带由编译器自动生成的后台字段的属性。所以问问你的同事他对自动属性有什么看法。 |
msoft · 串行端口。GetPortNames()返回错误的端口名 9 年前 |
QuangND · 查找准确位置,然后插入或添加,然后排序?哪个更好? 10 年前 |
Kidades · 如何将一个文本文件的内容复制到另一个缩短长度的文本文件? 11 年前 |
Kidades · 如何在Win XP中使应用程序静音? 11 年前 |
Sunkas · 在.net 2.0中从后台调用UI线程上的方法 11 年前 |
linquize · 委托BeginInvoke是否需要清理? 12 年前 |