继承:在程序中,如果一个类A:类B,这种机制就是继承。

子类可以继承父类的所有内容(成员)吗?

解析:

1.私有成员(属性和方法)

2.构造函数

3.final修饰过的方法,子类不能进行重写

//SE为PM的子类

//SE继承PM

class SE:PM
{
public int n;
public SE(int i,int n,int m){ }
}

  

class PM
{
public int money { get; set; }
public int gaga { get; set; }
public PM(int money, int gaga) { this.money = money;
this.gaga = gaga;
}
public PM() { }
}

  

3.访问修饰符

public    公有的

private   私有的

protected 受保护的

在java中,如果大家使用protected访问修饰符,来修饰一个变量,那么在当前包中的所有类中都可以访问。外加上不同包

类中有继承关系的类也可以访问。

4.揭秘子类构造

1.Main函数

2.子类构造,不进入子类构造体

3.执行到父类构造,不进入父类构造体

4.执行父类构造体   创建父类对象

5.回到子类构造体执行

6.子类构造体执行完毕 构造子类对象

7.回到Main,继续后续代码执行

5.base(父类构造)

base第一个用法:使用属性  base.属性名

base第二个用法;使用方法   base.方法名称相同

base第三个用法:调用父类构造 base()

//base.属性名

  class SE:PM
{
public int n;
public SE(int i,int n,int m){ base.gaga = i; }
}

  //base.方法名

 base.show();

  //调用父类构造

 public SE(int i,int n,int m):base(){

            base.gaga = i;
base.show(); }

  

6.继承的传递性和单根性

C#中不支持多继承

Java中不支持多继承  使用接口可以变相的支持多继承

多实现//////////////////变相的多继承    接口

机器语言

汇编语言  底层+++驱动级

面向过程  驱动级++驱动光盘 dll

C#和Java 面向对象  不支持多继承

7.多态初步

多态:多种形态

不同的对象 对于 同一个操作   做出的响应不同 。多态。

举例子:

1. USB父类   USB鼠标/USB键盘/USB照明

2. 鸭子    真实鸭子 /橡皮鸭子  木头鸭子(不会叫)

3. CUT    医生/理发师/演员

4. 打招呼  英文/含于/韩国人

5. 交通工具  汽车/地铁/自行车

父类有一个Cut方法,子类中有同名方法Cut

如何满足多态的条件

父类:Person

子类A:Hairdresser  理发师

子类B:Doctor:医生

子类C:Actor :演员

实现多态条件

1.父类有一个用virtual关键字修饰的方法

2.子类必须有一个同名方法,使用Override关键字

3.将N个子类对象放入父类类型集合。。

4.依次迭代

C#继承与多态的更多相关文章

  1. Objective-C中的继承和多态

    面向对象编程之所以成为主流的编程思想和他的继承和多态是分不开的,只要是面向对象语言都支持继承和多态,当然不同的OOP语言之间都有其特点.OC中和Java类似,不支持多重继承,但OOP语言C++就支持多 ...

  2. java中抽象、分装、继承和多态的理解

    1.抽象.封装装.继承和多态是java面向对象编程的几大特点. 抽象:所谓抽象就是对某件事务,我们忽略我们不关心不需要的部分,提取我们想要的属性和行为,并且以代码的形式提现出来:例如我们需要对一个学生 ...

  3. [转] JS中简单的继承与多态

    这里讲了一个最最最简单的JS中基于原型链的继承和多态. 先看一下以下这段代码的实现(A是“父类”,B是“子类”): var A = function(){ this.value = 'a'; this ...

  4. 网络电视精灵~分析~~~~~~简单工厂模式,继承和多态,解析XML文档,视频项目

    小总结: 所用技术: 01.C/S架构,数据存储在XML文件中 02.简单工厂模式 03.继承和多态 04.解析XML文档技术 05.深入剖析内存中数据的走向 06.TreeView控件的使用 核心: ...

  5. OC的封装、继承与多态

    面向对象有三大特征:封装.继承和多态. 一.封装 封装是将对象的状态信息隐藏在对象内部,不允许外部程序直接访问对象内部信息,而是通过该类所提供的方法来实现对内部信息的操作和访问.简而言之,信息隐藏,隐 ...

  6. 2、C#面向对象:封装、继承、多态、String、集合、文件(上)

    面向对象封装 一.面向对象概念 面向过程:面向的是完成一件事情的过程,强调的是完成这件事情的动作. 面向对象:找个对象帮你完成这件事情. 二.面向对象封装 把方法进行封装,隐藏实现细节,外部直接调用. ...

  7. Java学习笔记 07 接口、继承与多态

    一.类的继承 继承的好处 >>使整个程序架构具有一定的弹性,在程序中复用一些已经定义完善的类不仅可以减少软件开发周期,也可以提高软件的可维护性和可扩展性 继承的基本思想 >>基 ...

  8. JavaScript 面向对象程序设计(下)——继承与多态 【转】

    JavaScript 面向对象程序设计(下)--继承与多态 前面我们讨论了如何在 JavaScript 语言中实现对私有实例成员.公有实例成员.私有静态成员.公有静态成员和静态类的封装.这次我们来讨论 ...

  9. Java继承和多态实例

    我们知道面向对象的三大特性是封装.继承和多态.然而我们有时候总是搞不清楚这些概念.下面对这些概念进行整理, 为以后面向抽象的编程打下坚实的基础. 封装的概念还是很容易理解的.如果你会定义类,那么相信你 ...

  10. python基础——继承和多态

    python基础——继承和多态 在OOP程序设计中,当我们定义一个class的时候,可以从某个现有的class继承,新的class称为子类(Subclass),而被继承的class称为基类.父类或超类 ...

随机推荐

  1. VS2015中跑OpenGL红宝书第八版的示例代码

    OpenGL的东西快忘光了,把角落的第八版红宝书拿出来复习一下 从书中的地址下了个示例代码结果新系统(Win10+VS2015)各种跑不起来,懊恼之后在网上疯狂搜索资料终于跑起来了,记录一下 一.环境 ...

  2. 类加载器在加载类 的时候就已经对类的static代码块和static变量进行了初始化

    类装载器ClassLoader 类装载器工作机制 类装载器就是寻找类的节码文件并构造出类在JVM内部表示对象的组件.在Java中,类装载器把一个类装入JVM中,要经过以下步骤: [1.]装载:查找和导 ...

  3. BumpMapping [转]

    http://fabiensanglard.net/bumpMapping/index.php Fabien Sanglard's Website Home About FAQ Email Rss T ...

  4. 并行程序设计---cuda memory

    CUDA存储器模型: GPU片内:register,shared memory: host 内存: host memory, pinned memory. 板载显存:local memory,cons ...

  5. Codeforces Beta Round #1 A. Theatre Square

    从今天開始.就要在Codeforces里有一个新的開始了,貌似任务非常重的说~~ Codeforces专题我将会记录全部通过的题目,事实上仅仅要通过的题目都是水题啊!. 题目大意: 依照要求计算须要多 ...

  6. codefoeces B. Friends and Presents

    B. Friends and Presents time limit per test 1 second memory limit per test 256 megabytes input stand ...

  7. Windows下编程2----- C语言常用函数举例

    几个小函数 1.    //MessageBoxA(0,"网络故障,重新登录","qq error",3); //弹出对话框 2.    //ShellExec ...

  8. Ubuntu下编译Poco库

    本文主要记录下Ubuntu下编译Poco C++库的配置项以备后用.系统版本:Ubuntu 16.04,1 Poco 版本:1.9.0基本的步骤如下: 1.从官网下载最新的Poco源码,地址是:htt ...

  9. python datetime获取几分钟、小时、天之前的时间

    import datetime print ((datetime.datetime.now()-datetime.timedelta(days=1)).strftime("%Y-%m-%d ...

  10. shell grep正则匹配汉字

    Shell grep正则匹配中文 测试文本 demo_exe.c,内容如下,需要注意保存的编码格式,对输出到终端有影响: 我们中文操作系统ASNI默认是GBK的. #include<stdio. ...