饮水思源:金老师的自学网站多线程
基本类型的变量值能够自动装箱到一个object对象中,app
反过来,object对象也能够强制转化获得基本类型值。函数
class Program { static void Main(string[] args) { int i = 3; object obj = i; int j = (int) obj; } }
装箱和拆箱会带来较大性能损失,应当避免。性能
什么是“只读”对象:一旦建立,内容不可更改网站
为何要设计“只读”对象:多线程环境能够提高程序性能(访问时无需互斥)spa
如何设计“只读”类:类比高阶函数,当外界指望修改对象的字段值时,不改变原对象内容,而是建立一个新对象以知足需求。线程
static class Program { /// <summary> /// The main entry point for the application. /// </summary> [STAThread] static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new Form1()); } }
new谁,谁就是启动窗体。设计
private void button1_Click(object sender, EventArgs e) { var form2 = new Form2(); form2.ShowDialog(); }
如图所示:code
ShowDialog后,不关闭从窗体,没法激活主窗体。orm
而Show则能够:
固然,并非说Show以后从窗体彻底脱离主窗体存在,主窗体结束,从窗体会一同跟着结束。