zoukankan      html  css  js  c++  java
  • 面向对象-多态与多态性

    多态是指的多种形态;比如水的多种形态:水,冰
    多态性:在不考虑实例类型情况下使用实例,多态性分为静态多态性和动态多态性
    静态多态性:如任何类型都可以用运算符+进行运算
    多态:同一类事物的多种形态
    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):
            print('say wangwang')
    
    class Pig(Animal): #动物的形态之三:猪
        def talk(self):
            print('say aoao')
    
    class Cat(Animal): #动物的形态之三:猪
        def talk(self):
            print('say miaomiao')
    
    #多态性:指的是可以在不考虑对象的类型的情况下而直接使用对象
    peo1=People()
    dog1=Dog()
    pig1=Pig()
    cat1=Cat()
    
    def func(animal):
        animal.talk()
    
    func(peo1)
    func(dog1)
    func(pig1)
    func(cat1)
  • 相关阅读:
    ssh配置调试的必杀技
    关于lua垃圾回收是否会执行__gc函数呢?
    lua技巧分享之保护执行
    Java访问Hbase
    详解mmseg
    相关query挖掘
    玩转游戏搜索
    JVM系列-常用参数
    Java批处理ExecutorService/CompletionService
    Java动态编译
  • 原文地址:https://www.cnblogs.com/hexiaorui123/p/10201412.html
Copyright © 2011-2022 走看看