zoukankan      html  css  js  c++  java
  • C#面向对象

    1、重载并没有使代码减少多少,但是方便了类的使用者,使类看上去有智能化的效果。
    2、类的构造函数
    函数名称和类的名称相同
    不能有返回值
    不能调用,new的时候自动调用//比如说类创建的时候就给他的一些字段赋值,把初始化的代码写到类的函数里,类的构造函数可以重载的。
    3、继承是多态的一个基础
    理解抽象类接口的区别以及如何利用他们实现多态
    4、例如学生、老师都有共有的属性,年龄,班级、等,可以统一提取出来。继承共性,发扬个性。
    5、
    public calss Person
    {
    pricate int _age;
    public int Age
    {
    get{returm _age;}
    set{_age=value;}
    }
    private string _name;
    public int Name
    {
    get{returm _age;}
    set{_age=value;}
    }
    public string _sex;
    public int Sex
    {
    get{returm _age;}
    set{_age=value;}
    }
    }
    -----------------------------------------------------------
    1、OOP最核心的 封装 继承 多态。语言和语义上理解OOP
    2、对象-----类的实例。类使抽象的概念,类就是创建对象的模板。模子使类,砖是实例。

    1、函数,变量,if,for,while循环,这些都是面向过程的。但是不要把面向对象和面向过程分开,
    这是一个互补的过程,用面向过程实现。不能割裂开,只是面向对象你不了面向过程的不足。
    2、对象也可以叫做类的实例。人这个类有姓名、年龄、身高等字段。
    3、方法就是类能够执行的动作。
    窗口----显示,关闭 人---唱歌,跳舞
    4、C#里面方法和函数一样。
    5、基类:Base 父类:Parent子类:ChildClass
    class Person
    {
    public int Height;
    public int Age;
    public string Name;

    Public void SayHello()
    {
    Console.WriteLine("大家好。姓名是:{0}",this.Name);//我自己的升高
    }
    }
    --------------------------想用这个类
    Person p1=new Person();
    p1.SayHello();
    p1.Name="Tom";
    p1.Age=30;
    p1.Height=180;
    6、封装就体现在访问级别上。字段、方法、属性都可以叫做类的成员,都可以定义访问级别
    永远不要让字段Public
    Class Person2
    {
    public int Height;
    public int Age;
    private string Name;//不可以让别人改,外界就不能 p2.Name="ddd" 这样访问了,但是自己内部可以访问
    Public void SayHello()
    {
    this.睁眼(); //这样可以访问如果 睁眼() 在外部则不可以访问。
    Console.WriteLine("大家好。姓名是:{0}",this.Name);//这样是可以访问的
    }
    Private void 睁眼() //注意是私有,内部
    {
    Console.WriteLine("睁开双眼");
    }
    }
    7、

    Class Person2
    {
    public int Height;
    public int Age;
    private string Name;

    public void GiveName(string name)
    {
    this.Name=name;
    }
    }
    Person2 p=new Person2();
    p.GiveName("Tom");//虽然不能直接访问但可以通过方法来给字段取名。
    ----------------------------------------------------------------------
    Class Person2
    {
    public int Height;
    public int Age;
    private string Name;

    public void GiveName(string name)//加这个方法就是来决定这个名字要不要。
    {
    if(name=="Jerry")
    {
    return; //若取名Jerry,我不要,直接返回
    }
    this.Name=name;
    }
    }
    Person2 p=new Person2();
    p.GiveName("Tom");//虽然不能直接访问但可以通过方法来给字段取名。

  • 相关阅读:
    Magic-Club第六天
    .net工具类——文件操作
    .net工具类——HTML处理
    .net工具类——随机生成
    .net工具类——删除最后结尾的一个逗号
    .net工具类——分割字符串
    .net工具类——对象转换处理
    .net扩展方法——其他(科学计数法、ToDictionary 去重、List<Guid>转为List<Guid?>)
    .net扩展方法——类型转换
    『Linux学习笔记』7. 管道和过滤器 -- pipe
  • 原文地址:https://www.cnblogs.com/d685600/p/3650350.html
Copyright © 2011-2022 走看看