C sharp #005# 对象与对象变量

饮水思源:金老师的自学网站

自动装箱

基本类型的变量值可以自动装箱到一个object对象中,

反过来,object对象也可以强制转化得到基本类型值。

    class Program
    {
        static void Main(string[] args)
        {
            int i = 3;
            object obj = i;
            int j = (int) obj;
        }
    }

装箱和拆箱会带来较大性能损失,应当避免。

“只读”对象

什么是“只读”对象:一旦创建,内容不可更改

为什么要设计“只读”对象:多线程环境可以提升程序性能(访问时无需互斥)

如何设计“只读”类:类比高阶函数,当外界期望修改对象的字段值时,不改变原对象内容,而是创建一个新对象以满足需求。

设定启动窗体

    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谁,谁就是启动窗体。

ShowDialog与Show

        private void button1_Click(object sender, EventArgs e)
        {
            var form2 = new Form2();
            form2.ShowDialog();
        }

如图所示:

ShowDialog后,不关闭从窗体,无法激活主窗体。

而Show则可以:

当然,并不是说Show之后从窗体完全脱离主窗体存在,主窗体结束,从窗体会一同跟着结束。

猜你喜欢

转载自www.cnblogs.com/xkxf/p/10801634.html
今日推荐