• 面向对象(多态)


    多态:

    同样都是继承了同一个父类,但是父类中的方法并不使用任何一个子类,那么在这就需要子类重新编写这个方法的主体

    1、需要父类同意子类可以重新编写自己的方法
    virtual - 虚方法

    2、子类只能重写父类允许重写的方法,只能重写虚方法
    override - 重写覆盖虚方法

    所有的类都可以当做父类,都可以有虚方法

    public class Fly
        {
            public virtual string Flying()
            {
                return "我会飞行!";
            }
    }
    public class Plane : Fly
        {
            public override string Flying()
            {
                return "我喷火就能飞!"; 
            }
    
    
        }

    抽象类:abstract
    它就是为了被继承而出现的

    普通的类中所有的方法都变成虚方法,没有人用最基础的方法,全部都需要重写,那么就不需要那么费劲把普通类中的方法主体都写完,而是,直接定义成抽象类,并且都写成抽象方法。

    只声明方法的名称和返回类型,具体方法主体是什么,继承过去以后自己去实现。

    抽象方法一定是在抽象类中
    有抽象方法的类,一定是抽象类

    抽象类中不一定只有抽象方法

    public abstract class Ren
        {
            public abstract string ChiFan();
    
            public abstract string ShuiJiao();
    
            public virtual string ShuoHua()
            {
                return "我能说话!";
            }
    
        }
     public class NanRen : Ren
        {
            public override string ChiFan()
            {
                return "大口吃饭!";
            }
    
            public override string ShuiJiao()
            {
                return "趴着睡!";
            }
    }

    接口:interface
    就是让类更加完善

    都是抽象方法,不能有一点实在东西,全部内容都需要在子类中进行实现

  • 相关阅读:
    单词 统计
    第九周周进度报告
    日常总结
    Docker 初识
    读书笔记
    《未来简史》有感
    自己的Java规范文档
    nginx自动部署脚本
    jdk 自动化脚本
    我Java学习时的模样(三)
  • 原文地址:https://www.cnblogs.com/zblc2016/p/5856561.html
Copyright © 2020-2023  润新知