zoukankan      html  css  js  c++  java
  • 10、属性、构造函数与析构函数

    一、属性可以实现有些值可读可写的控制。

      使用set和get关键字

      格式:

        private string _name;//定义私有变量

        get { return _name; } //可读
        set { _name = value; } //可写

        自动属性

        get:

        set:

    例子:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    
    namespace _13
    {
        public class product
        {
            private string _name;
            private decimal _price;
            private string _color;
    
            public string name
            {
                get { return _name; }  //可读
                set { _name = value; }  //可写
            }
             
            public decimal price
            {
                get { return _price; }
                set { _price = value; }
            }
       
            public string color
            {
                get { return _color; }
                set { _color = value; }
            }
        }
    }
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    
    namespace _13
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
            private void button1_Click(object sender, EventArgs e)
            {
                
                product p = new product();
                p.name = tb_name.Text;
                p.price = decimal.Parse(tb_price.Text);
                p.color = tb_color.Text;
    
                lbl_name.Text = p.name;
                lbl_price.Text = p.price.ToString();
                lbl_color.Text = p.color;
            }
        }
    }

    二、构造函数

      构造函数在实例化对象时自动调用函数。

      函数名称必须与类名相同

      无返回值类型

      实例化时总会执行构造函数

      如果没有显示申明,C#会自动提供一个默认的空构造函数

     public product(string n,decimal pr,string co)
            {
                _name = n;
                _price = pr;
                _color = co;
            }
      string name = tb_name.Text;
                decimal price = decimal.Parse(tb_price.Text);
                string color = tb_color.Text;
                product p = new product(name,price,color);

    三、析构函数

      清理非托管资源

      不能有参数

      不能有修饰符而且不能被调用

      前缀“~”以示区别

    ~product()
        {
            //清理非托管资源
        }
  • 相关阅读:
    phpcms——列出父目录下的所有子目录问题
    chm格式文档不能阅读问题
    php学习 5 无限级分类
    phpcms——rss问题
    phpcms——评论页面修改
    phpcm后台评论管理修改评论列出条数
    php学习4 函数定义
    网站测试工具
    ASP.NET前台代码绑定后台变量方法总结收藏帖
    在asp.net网站下使用fckeditor 和fcfinder (包括修改fcfinder 来使上传文件按时间来命名和按用户分割文件)
  • 原文地址:https://www.cnblogs.com/zytr/p/14730619.html
Copyright © 2011-2022 走看看