1 继承1.1 基类与派生类C#中的类不支持多继承。只有在类和接口之间可以实现多继承。 public static void Main() { Business c1 = new Business(); c1.Name = "李...
分类:
其他好文 时间:
2014-11-29 00:03:15
阅读次数:
270
第一讲 多态1、 定义可以理解为事物存在的多种体现形态。在java中,当函数的功能内容不确定时,可以将此方法定义为抽象方法,让其子类去实现。当子类对象不同时,调用同一个函数名,会执行不同的函数体,得到不同的结果,从而体现了多态性。2、 多态的体现形式父类的引用指向了自己的子类对象:Fu f = ne...
分类:
编程语言 时间:
2014-11-28 11:48:01
阅读次数:
289
virtual:虚函数。C++通过虚函数实现多态."无论发送消息的对象属于什么类,它们均发送具有同一形式的消息,对消息的处理方式可能随接手消息的对象而变"的处理方式被称为多态性。"在某个基类上建立起来的类的层次构造中,可以对任何一个派生类的对象中的同名过程进行调用,而被调用的过程提供的处理可以随其所...
分类:
编程语言 时间:
2014-11-28 11:44:35
阅读次数:
210
第一讲 面向对象概念1、 定义相对于与面向过程而言的,将功能封装进对象,我们只关心具备了该功能的对象,而不用关注对象的具体细节。面向对象的特点:使复杂问题简单化。我们只关心什么对象能处理什么事情,而不用关心具体的实现细节。2、 面向对象特征封装、继承、多态。第二讲 类和对象的关系1、 概述类就是:对...
分类:
编程语言 时间:
2014-11-28 11:39:31
阅读次数:
316
本文摘录自C++多态性的一个典型例子。 例题:先建立一个Point(点)类,包含数据成员x,y(坐标点)。以它为基类,派生出一个Circle(圆)类,增加数据成员r(半径),再以Circle类为直接基类,派生出一个Cylinder(圆柱体)类,再增加数据成员h(高)。要求编写程序,重载运算符“...
分类:
编程语言 时间:
2014-11-28 01:00:29
阅读次数:
374
虚函数为了重载和多态的需要,在基类中是有定义的,即便定义是空,所以子类中可以重写也可以不写基类中的此函数!
纯虚函数在基类中是没有定义的,必须在子类中加以实现,很像java中的接口函数!
虚函数
引入原因:为了方便使用多态特性,我们常常需要在基类中定义虚函数。
class Cman
{
public:
virtual void Eat(){……};
...
分类:
编程语言 时间:
2014-11-27 23:45:34
阅读次数:
345
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
模板方法设计模式:
解决的办法:当功能内部一部分是现实确定,一部分是现实不确定的,这时间不可把不确定的部分暴漏出去,让子类实现。
实例:统计一个程序的的运行时间
思路:程序的结束时间减去程序的开始时间abstract class Gettime{
public final void g...
分类:
编程语言 时间:
2014-11-27 23:41:12
阅读次数:
323
一、虚函数表原理
陈皓的一篇blog讲的很透彻:http://blog.csdn.net/haoel/article/details/1948051/
虚函数表可以分为:单一继承无虚函数覆盖、单一继承有虚函数覆盖、多重继承无虚函数覆盖和多重继承和有虚函数覆盖。
注意与虚拟继承区分开来
二、多态实现原理
多态则是通过继承、虚函数(virtual)、指针来实现。...
分类:
编程语言 时间:
2014-11-27 18:38:48
阅读次数:
130
多态特性:
提起面向对象,很自然地想到三大特性:封装、继承、多态。他们的目录分别是:
1. 封装,使代码模块化封装内部结构和状态。
2. 继承,用于扩展原有代码。
3. 多态,方便接口重用,通过同一接口和传入的对象调用适用于不同对象的实现。多态在运行时绑定函数,而非多态则在编译期就已确定了函数的调用地址。
从架构设计的层面来看多态有什么好处呢?将源码和运行的依赖进行反转。
通常...
分类:
编程语言 时间:
2014-11-27 16:23:36
阅读次数:
231
下面从一个简单的例子来说明面向对象的多态机制:假设,有个妹子养了只宠物,宠物高兴了会叫。那么首先来看如何抽象宠物这个类:class Animal { String name; Animal(String name) { this.name = name; } ...
分类:
其他好文 时间:
2014-11-27 16:04:10
阅读次数:
213