zoukankan      html  css  js  c++  java
  • 构造函数与析构函数

    class Renlei //添加一个"人类"的 类
    {
        public int Shengao; //声明一个 身高 的 整型变量

        public Renlei() //这个方法叫 构造函数(方法名 和 类名 同名的就叫构造函数)--好处是:程序一加载就要运行一次
        {
            Console.WriteLine("出生时的哭声Wawawa...");
        }

        ~Renlei() //这个方法叫 析构函数(特点:和类同名,前面加一个"~")--好处是:刚把人造出来就干掉了,好惨忍...呜呜
        {
            Console.WriteLine("俺不想死呀");
        }
        public void Shuohua() //声明了一个一出生就说话的方法(当然,小孩不会说话了,只会哭Wawawa...)
        {
            Console.WriteLine("俺的身高是" + Shengao + "厘米"); //这个方法就做一件事:就是告诉你,俺的身高是多少多少哩米
        }
    }

    class ShangDiZaoRen //项目的命名空间(就是告诉你,项目的名称是:ShangDiZaoRen)
    {
        static void Main(string[] args) //程序主入口(这个可不能糊涂啊,没有主入口,你连门都进不去)
        {
            Console.WriteLine("大家好,我是一个人");

            Renlei Zhangsan; //给这个人取个名字先
            Zhangsan = new Renlei(); //先造一个张三
            Zhangsan.Shengao = 160; //用刚造出来的张三调用 身高变量Shengao,得到张三的身高,也就是给他赋值
            Zhangsan.Shuohua(); //用刚造出来的张三调用 说话的方法Shuohua(),也就是打印出来

            Renlei Lisi=new Renlei(); //再造一个李四
            Lisi.Shengao = 170;
            Lisi.Shuohua();        
        }
    }


    构造函数创建对象,而析构函数是销毁对象。 
    析构函数没有参数的,而且不能被调用的。

    分析一下代码

    构造函数public Renlei()在创建的时候自动调用,所以在RenLei zhangsan=呢我RenLei()时他自动哭Console.WriteLine("出生时的哭声Wawawa...");

    析构函数在程序退出时自动调用,所以才有 Console.WriteLine("俺不想死呀");
    至于有两次,是由于你调用了两次RenLe()创建了2个人,所以要干掉2个人,
    加深了我对析构函数的认识
  • 相关阅读:
    母版页和相对路径
    回发或回调参数无效
    ASPNETPAGER的使用方法
    关于ID的取法
    JS获取屏幕,浏览器,网页高度宽度
    form配置问题
    checkedListBox
    html标签的赋值与取值
    如何将前台线程改为后台线程
    在线程委托中实现参数的传递
  • 原文地址:https://www.cnblogs.com/yulei126/p/6758023.html
Copyright © 2011-2022 走看看