c++多态性的例子

class animal
{
public:
	virtual void enjoy()
	{
		cout << "叫声。。。" << endl;
	}
};

class dog:public animal
{
public:
	void enjoy()
	{
		cout << "狗叫声。。。" << endl;
	}
};

class lady
{
public:
	animal *a;
	lady(animal *oo) :a(oo){}
	void jiao()
	{
		a->enjoy();
	}
};

//测试代码
animal *g=new dog();
	lady ll(g);
	ll.jiao();//输出“狗叫声。。。”

时间: 2024-08-08 05:37:29

c++多态性的例子的相关文章

python篇1.12.2---继承,多态与多态性,封装

1.什么是继承 继承是一种创建 新的类的 方式. 在python中,新的类可继承自一个或多个父类,原始的类称为 基类或超类,新建的类 称为 派生类或子类. class ParentClass1: #定义父类 pass class ParentClass2: #定义父类 pass class SubClass1(ParentClass1): #单继承,基类是ParentClass1,派生类是SubClass pass class SubClass2(ParentClass1,ParentClass

Day 32(07/06)多态与多态性

五 多态与多态性 很多人喜欢将二者混为一谈,然后百思不得其解,其实只要分开看,就会很明朗     5.1 多态 多态指的是一类事物有多种形态,(一个抽象类有多个子类,因而多态的概念依赖于继承) 1. 序列类型有多种形态:字符串,列表,元组. 2. 动物有多种形态:人,狗,猪 import abc class Animal(metaclass=abc.ABCMeta): #同一类事物:动物 @abc.abstractmethod def talk(self): pass class People(

python基础之多态与多态性

很多人喜欢将多态与多态性二者混为一谈,然后百思不得其解,其实只要分开看,就会很明朗. 一 多态: 多态指的是一类事物有多种形态,(一个抽象类有多个子类,因而多态的概念依赖于继承) 序列类型有多种形态:字符串,列表,元组 动物有多种形态:人,狗,猪 import abc class Animal(metaclass=abc.ABCMeta): #同一类事物:动物 @abc.abstractmethod def talk(self): pass class People(Animal): #动物的形

面向对象之多态、多态性

阅读目录 一 多态 二 多态性 一 多态 多态指的是一类事物有多种形态 动物有多种形态:人,狗,猪 import abc class Animal(metaclass=abc.ABCMeta): #同一类事物:动物 @abc.abstractmethod def talk(self): pass class People(Animal): #动物的形态之一:人 def talk(self): print('say hello') class Dog(Animal): #动物的形态之二:狗 def

python面向对象:多态与多态性

多态 多态指的是一类事物有多种形态,比如 动物有多种形态:人,狗,猪 import abc class Animal(metaclass=abc.ABCMeta): #同一类事物:动物 @abc.abstractmethod def talk(self): pass class People(Animal): #动物的形态之一:人 def talk(self): print('say hello') class Dog(Animal): #动物的形态之二:狗 def talk(self): pr

类的多态和多态性

类的多态和多态性 很多人喜欢将多态与多态性二者混为一谈,然后百思不得其解,其实只要分开看,就会很明朗. 一.多态 多态指的是一类事物有多种形态,(一个抽象类有多个子类,因而多态的概念依赖于继承) 序列数据类型有多种形态:字符串,列表,元组 动物有多种形态:人,狗,猪 1.1 动物的多种形态 # 动物有多种形态:人类.猪.狗 class Animal: def run(self): # 子类约定俗称的必须实现这个方法 raise AttributeError('子类必须实现这个方法') class

第十篇 面向对象的程序设计

第十篇 面向对象的程序设计 阅读目录 一 面向对象的程序设计的由来 二 什么是面向对象的程序设计及为什么要有它 三 类和对象 3.1 什么是对象,什么是类 3.2 类相关知识 3.3 对象相关知识 3.4 对象之间的交互 3.5 类名称空间与对象/实例名称空间 3.6 小结 四 继承与派生 4.1 什么是继承 4.2 继承与抽象(先抽象再继承) 4.3 继承与重用性 4.4 组合与重用性 4.5 接口与归一化设计 4.6 抽象类 4.7 继承实现的原理(继承顺序) 4.8 子类中调用父类方法 五

08-面向对象----J

一 面向对象的程序设计的由来 请参考:http://www.cnblogs.com/linhaifeng/articles/6428835.html 二 什么是面向对象的程序设计及为什么要有它 面向过程的程序设计的核心是过程,过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西. 优点是:极大的降低了程序的复杂度 缺点是:一套流水线或者流程就是用来解决一个问题,生产汽水的流水线无法生产汽车,即便是能,也得是大改,改一个组件,牵一发而动全身. 应用场景:一旦

JAVA学习第十五课(多态及其基本应用)

多态: 面向对象的第三个特征,定义:某类事物存在多种形态,比如,函数就具备多态性,同名的一个函数,它的参数列表不一样,它的存在性就不一样,还有同一个函数,放在父类和放在子类,它的存在性也就不一样. 对象也存在多态性. 例子:动物有猪.猫.狗等 猫这个对象对应的类是猫类 猫 x = new 猫(): 同时,猫还是动物的一种,也就可以把猫成为动物 动物 y = new 猫(); 动物 z = new 狗(); 动物是狗和猫集体事物中抽取出来的父类 父类引用指向了子类对象 一.概述 //对象的多态性