C# 面向对象的封装、继承、多态
2021-04-29 08:28
标签:ret console ace 命名空间 ring 而且 public 事物 als 一、封装: 封装:把客观的事物封装成类,使用和修改方便; 作用和结构体使用方法相似,程序执行流程不同; 要点:成员变量,属性,成员方法,构造函数,成员方法的静态和非静态,命名空间,常用的访问修饰符public公共的、parvate私有的,只有类本身可以访问,internal默认的,同一个命名空间下可以访问、protected被保护的、同一个继承关系下可以访问; 重名问题:同一个作用域下不允许出现重名问题,最简答解释作用域就是一个花括号内,而每一个循环是不同的花括号的情况下重名是没有关系的; 1、*****成员变量最基本的“经纪人” class student //新建类 { private string _name; //成员变量 public string name //属性 { get { return _name; } //return的作用就是扔给外面一个值。 //如果只有get,就只往外输出固定的值; set { _name = value; } //如果执行语句 student.name = "abcde"; 那么这里value的值就是"abcde"; //value的作用就是从外面赋予成员变量值。 } 2、*****成员变量可以有多个“经纪人”,而且数据类型可以不一致 private bool _sex; public bool sex { get{ return _sex; } set{ _sex = value; } } public string sexabc { get { return "abcd"+ _sex; } //如果执行语句 student.name = "abcde"; 那么这里value的值就是"请输入false"; //如果执行语句 student.name = "false"; 那么这里value的值就是"abcdfalse"; set { if(value == "false") _sex = value; else _sex = "请输入false"; } } 3、*****构造函数 class student { public student() { } //创建构造函数就是执行了这一步;默认不被写出来,但是真实存在; } student s = new student(); //这个过程叫实例化的过程;而student()这个方法就是一个构造函数; 总结:重建对象的过程就是将类实例化的过程; 实例化的过程就是执行构造函数的过程; 构造函数是在创建完类之后形成的; 4、*****成员方法 private string _name; public string name { get { return _name; } set { value = _name; } } public string say() //新建一个方法 { return "啦啦啦"+_name; } student s = new student(); s.name = "abcd"; string str = s.say(); Console.Write(s.str); //输出的是say这个方法返回的值,此时是 啦啦啦abcd; 总结:在构造函数内可以给private赋值;如果在外面重新赋值那么就会覆盖构造函数内给private赋的值,输出新的,如果没有赋值,那么默认输出构造函数内赋予的值; 5、*****静态方法 含有static关键字的就是静态方法; 实例化的静态无法使用静态的方法; 静态的方法属于类本身,要用类名点出来;public static int abc(){} 赋值方法是:student.abc(); student就是类名; 5、*****命名空间或者程序集 namespace; 需要引用using 空间名; 二、继承 public class fly //父类,这是个类名; { } public string brid:fly //子类,类名;可以继承父级的公共用的属性; { } public string little brid:brid //孙子类,类名;可以继承祖父类、父类的公共用的属性; { } 1、 父类、基类 2、子类、派生类 三、多态(部分) 1、public vritual class plane:brid //vritual 虚拟的 override重写 { public override string (brid想要修改继承的方法) { return "aaaaa"; } } 方法名一样是可以的,会以重载的方式显示; C# 面向对象的封装、继承、多态 标签:ret console ace 命名空间 ring 而且 public 事物 als 原文地址:http://www.cnblogs.com/xinchenhui/p/7820386.html