• c# 面向对象 继承方式,字段,属性,析构器等意义和写法


    1.字段(类中私有保存数据的变量,和java一样),属性(字段对外展示的代理变量,内置get,set方法,可以在get set方法中写逻辑),构造器(调用对象本省的其他构造器方式和java不同),析构器(在程序结束前最后自动执行的一个函数,一般用于数据清理释放资源,一般不太用,因为有gc回收器)。

    测试类:

    using System;
    
    namespace ConsoleApp1
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Student student = new Student(23,"ssssss");
                Student student = new Student(23);
                Console.WriteLine("id:{0} name:{1}", student.Id, student.Name);
                Console.ReadKey();
            }
        }
    }

    被调用的类

    using System;
    using System.Collections.Generic;
    using System.Text;
    
    namespace ConsoleApp1
    {
        class Student
        {
            /// <summary>
            /// 构析函数:此函数是在程序结束的时候调用,一般用来清理数据释放内存,当然c#中也有gc但是一样不受管理,
            /// 所以如果想在程序结束后立即清理垃圾释放内存就可以在这儿清理。
            /// </summary>
            ~Student(){
                Console.WriteLine("在程序结束前最后自动调用的一个函数,主要用于垃圾清理");
            }
    
            /// <summary>
            /// 带id的构造器,里面演示了此构造器调用当前对象的其他构造器的方法。
            /// </summary>
            /// <param name="Id"></param>
            public Student(long Id) : this(Id, "小刚") { }
    
            /// <summary>
            /// 全参构造器
            /// </summary>
            /// <param name="Id">id</param>
            /// <param name="Name">姓名</param>
            public Student(long Id, string Name) {
                this.Id = Id;
                this.Name = Name;
            }
    
            /// <summary>
            /// 空构造器
            /// </summary>
            public Student() { }
    
            /// <summary>
            /// 字段:_id 类中最终保存数据的地方
            /// 属性:Id 对外展现数据的名称,里面包含get,set属性,可以在get,set方法中添加自定义的代码
            /// 调用示例: 
            /// Student student = new Student();
            /// student.Id = 22222; 赋值"set"
            /// long newId = student.Id; 取值"get"
            /// </summary>
            private long _id;
            public long Id
            {
                get => _id; 
                set => _id = value; 
            }
    
            /*
             * _name是字段名,Name是属性名:属性中包含get和set方法。
             */
            private string _name;
            public string Name
            {
                get { return _name; }
                set
                {
                    if (value.Equals("小明"))
                    {
                        value = "娜可露露";
                    }
                    _name = value;
                }
            }
        }
    }
  • 相关阅读:
    谷歌火狐浏览器限制的端口
    Web Api 内部数据思考 和 利用http缓存优化 Api
    Web Api 端点设计 与 Oauth
    FI-FBV0
    Others-SAP hybris 介绍
    ABAP-表修改日志存储
    TR-银行通信相关文档
    ABAP-Eclipse ADT中创建ABAP CDS视图
    TR-业务流程图
    FPM-OVP增强实例-银行账户
  • 原文地址:https://www.cnblogs.com/li-yan-long/p/14000989.html
Copyright © 2020-2023  润新知