Python:多态(一个接口多种实现)

class Animal(object):
----def init(self,name):
--------self.name=name

def talk(self):
    pass
@staticmethod
def animal_talk(obj): #动物叫的接口
    obj.talk()

class Cat(Animal):
----def talk(self):
--------print("mow!")
class Dog(Animal):
----def talk(self):
--------print("wang,wang")

c=Cat(‘李丽‘)
d=Dog(‘王张‘)
Animal.animal_talk(c)#多态:一个接口多种实现
Animal.animal_talk(d) #一个接口多种实现

原文地址:http://blog.51cto.com/3906249/2301391

时间: 2024-10-10 13:17:28

Python:多态(一个接口多种实现)的相关文章

.NET Core中的一个接口多种实现的依赖注入与动态选择看这篇就够了

最近有个需求就是一个抽象仓储层接口方法需要SqlServer以及Oracle两种实现方式,为了灵活我在依赖注入的时候把这两种实现都给注入进了依赖注入容器中,但是在服务调用的时候总是获取到最后注入的那个方法的实现,这时候就在想能不能实现动态的选择使用哪种实现呢?如果可以的话那么我只需要在配置文件中进行相应的配置即可获取到正确的实现方法的调用,这样的话岂不快哉!今天我们就来一起探讨下实现这种需求的几种实现方式吧. 作者:依乐祝 原文地址:https://www.cnblogs.com/yilezhu

python写一个简单的接口

写一个接口: 1.用到的模块是flask,flask是一个python的一个web框架,可以用来开发接口和web页面 2. 启动服务的效果是这样的: 用postman测试的结果:

Python 多态

类的多态 多态 多态性(polymorphisn)是允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作.简单的说,就是一句话:允许将子类类型的指针赋值给父类类型的指针. 那么,多态的作用是什么呢?我们知道,封装可以隐藏实现细节,使得代码模块化:继承可以扩展已存在的代码模块(类):它们的目的都是为了--代码重用.而多态则是为了实现另一个目的--接口重用!多态的作用,就是为了类在继承和派生的时候,保证使用"家谱"中

多态and接口

一.多态 1.什么是多态? 解析:不同的对象对于同一个操作,做出的响应不同 具有表现多种形态的能力的特征 2.使用多态的优点 解析:为了实现统一调用 一个小例子:<父类类型作为参数> 父类(Pet) 子类(Gog,Penguin) 主人类(Master)测试类(Test) Pet public abstract class Pet { public abstract void eat(); } Dog public class Dog extends Pet{ @Override public

java----基础(this,继承,多态,抽象类,接口)

this指针 this指针在类定义时用到,this属于用类实例化的对象,只能在定义类的时候使用:(在下面的代码中会有体现) 类变量&类方法 定义: 访问修饰符 static+数据类型+变量名 所有该类的对象均可访问,均可修改,不会在调用后初始化,相当于全局变量. 可以被所有对象访问到,并且可以通过类访问到  类名.类变量 静态方法 == 类方法 可以被类名和对象访问到 原则上类变量用类方法来访问 类方法中不能访问非类变量,类变量可以被非类方法访问. 四种访问控制符: public : 对外公开

java基础三 [深入多态,接口和多态](阅读Head First Java记录)

抽象类和抽象方法 1.抽象类的声明方法,在前面加上抽象类的关键词abstract abstract class canine extends animal{ public void roam(){} } 抽象类除了被继承过之外,是没有用途,没有值,没有目的.类中的方法可以当做子类的合约内容,合约是对其他程序的承诺协议 抽象类中可以带有抽象和非抽象的方法 如果类中有抽象方法,则类必定标识为抽象的. 2.抽象的方法没有实体 (因为方法中的程序代码没有意义.抽象类需要被extend过有意义,抽象方法一

多态、接口

一.多态 1.什么是多态? 解析:不同的对象对于同一个操作,做出的响应不同 具有表现多种形态的能力的特征 2.使用多态的优点 解析:为了实现统一调用 一个小例子:<父类类型作为参数> 父类(Pet) 子类(Gog,Penguin) 主人类(Master)测试类(Test) Pet public abstract class Pet { public abstract void eat(); } Dog public class Dog extends Pet{ @Override public

也谈多态,接口,抽象类

新人学JAVA,这部分知识点应该是一个槛(反正我是被槛住好长时间),可能就是因为这几个点会怀疑自己,怀疑自己的智商,怀疑自己的抉择,进而怀疑人生...说正题: 1.啥叫多态: 就是多种形态(P话),一个抽象类,由于被多个类继承和重写方法,而产生的各种各样的类,叫做这个抽象类的多态.一个接口,由于被多个类实现和重写方法体,而产生的各种各样的类,叫做这个接口的多态. 2.啥叫抽象: 就是把大象抽出来! 高大上解释:大者,广也.象者,天地万物之象也.即把普遍存在于天地万物中的现象抽离出来. 普通解释:

多态和接口

一.多态 1.什么是多态? 解析:不同的对象对于同一个操作,做出的响应不同 具有表现多种形态的能力的特征 2.使用多态的优点 解析:为了实现统一调用 一个小例子:<父类类型作为参数> 父类(Pet) 子类(Gog,Penguin) 主人类(Master)测试类(Test) Pet public abstract class Pet { public abstract void eat(); } Dog public class Dog extends Pet{ @Override public