• 面向对象 多态和静态


    三、多态

    1.编译多态
    函数重载


    2.运行多态
    概念:当父类引用指向子类实例的时候,由于子类对父类的方法进行了重写,在调用该方法的时候表现出的不同就称为多态
    条件必须要有继承 父类引用指向子类实例 子类必须对父类的方法进重写

    里氏代换原则:如果有一个地方需要使用到父类对象,那么你可以将一个子类对象给他

        class Program
        {
            static void Main(string[] args)
            {
             DongWu dw = new Dog();            
           Dog d
    = new Dog(); Console.WriteLine(Ceshi(dw)); Console.WriteLine(CeShi(d)); Console.ReadLine(); } public static string CeShi(DongWu d) { return "ok"; } } class DongWu { public virtual string Eat() //虚方法 { return "该动物在吃饭"; } } class Dog:DongWu { public override string Eat() //重写 { return "狗正在吃骨头"; } } class Cat : DongWu { public override string Eat() { return "猫正在吃鱼"; } }

    静态

    1.普通成员  普通成员都是属于对象的

                     用对象调用

    2.静态成员  静态成员是属于类的

          用类名调用

          stactic 静态关键字

    静态方法里面不能包含普通成员
    普通方法里面可以包含静态成员

    用处:1.为了简便

           连接数据库的时候,造连接对象类,使用静态属性直接返回连接对象。

         2.两个类之间传递信息

         3.不允许创建对象的类(对创建对象的个数有限制)

        class Program
        {
            static void Main(string[] args)
            {
                ZuHe zh = new ZuHe();
    
                //zh.name="张三"; //调用普通成员
                //ZuHe.zname = "五月天"; //调用静态成员
                ZuHe.Sing();
    
                Console.WriteLine(zh.Run());
                Console.ReadLine();
            }
        }
    
    
        class ZuHe
        {
            public string name="李四"; //普通成员,组合里面某个人的名字
    
            public static string zname = "李四"; //静态成员,组合名字
    
            public static string Sing() //静态方法
            {
                return "正在唱歌";
            }
    
            public string Run() //普通成员
            {
                return zname+"正在奔跑"; 
            }
        }
  • 相关阅读:
    python-函数进阶
    SHELL wordpress.sh
    XFS: possible memory allocation deadlock in kmem_alloc (mode:0x2d0)
    Puppet install with nginx unicorn
    CentOS 6内核编译问题整理
    Openstack 本地yum源配置
    Openstack 本地yum源配置
    hpsa 0000:0a:00.0: out of memory
    openstack VNC安全问题
    CentOS下crash分析内核kdump文件方法
  • 原文地址:https://www.cnblogs.com/ShenG1/p/5771367.html
Copyright © 2020-2023  润新知