• <<设计模式C#>>学习笔记一:面向对象编程准备知识


    接口和抽象类概述

    1. 接口是类的蓝图
    2. 在OOP中,接口是稳定,而抽象类和其子类是变化的.

    接口和抽象类的区别

    1. 接口是"behaves like a",抽象类一个是"is a"

    2. 一个抽象类可以包括非抽象方法,和数据成员,接口的所有成员在效果上都是抽象的.

    3. 抽象类可以有构造器(不过通常是protected的),而接口不能.

    4. 接口成员的访问修饰符只能是public,而抽象类可以有定义其他访问修饰符(private , protected).

    5. 一个类可以现实任意多个接口,但只能继承自一个抽象类.

    6. 接口不能有数据成员,而抽象类可以.

     虚方法和重写

    1. .NET中如果基类的方法,或属性不声明成虚的,则子类无法重写基类的方法或属性.(在java,默认所有方法都是虚的,方便呀*_*,子类直接覆盖基类的)
    2. 继承非虚方法是,.NET默认会隐藏其基类的方法,给出一个警告.
    3. 虚方法和重写表达的语意就是多态.

    两句闲话


    以前,我有一次面试,人家让我说出抽象类,接口,虚方法,重写的用途和使用场景,我当时没答出来.现在想想真的很不应该,面向对象的知识这么重要,我们很多人都没有掌握好.我现在还在模索中...

    另一道题是,脱离IDE,完全用文本编程器,写一个Windows Forms程序:两个textbox,三个button,排列整齐,按下button显示messagebox,用命令行编译并运行效果.还好,这一道我给他整出来了.

  • 相关阅读:
    MongoDB中常用的find
    MongoDB文档的增删改操作
    我的notepad++
    MongoDB入门知识
    Python基础5-常用模块
    Python基础4
    Python基础3(2017-07-20)
    Python基础2(2017-07-18)
    Python基础1(2017-07-16)
    Python简介(2017-07-16)
  • 原文地址:https://www.cnblogs.com/rockniu/p/895213.html
Copyright © 2020-2023  润新知