Java教程

多态与多态性

本文主要是介绍多态与多态性,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

目录
  • 一:多态与多态性
    • 1.多态
    • 2.多态性

一:多态与多态性

1. 什么是多态
水:液态水,固态水,气态水
动物:人,猪,狗,猫 ...
1.多态
imput abc
导入模块
抽象类:抽象类只能被继承,不能被实例化  
class Animal(metaclass=abc.ABCMeta):
用处 继承Animal的子类必须有speak,没有直接报错
    @abc.abstractmethod   该方法已经是抽象方法了
    def speak(self): pass   抽象方法里面不能有函数体 pass即可

    @abc.abstractmethod
    def login(self):pass

class People(Animal):
    def speak(self):
         print('嗷嗷嗷')
        pass
    def login(self):
        pass


class Pig(Animal):
    def speak(self):
        print('哼哼哼')


class Dog(Animal):
    def speak(self):
        print('汪汪汪')


obj = People()
obj.speak()
2.多态性
 父类限制子类的行为
class Animal():
    def speak(self):
        raise Exception("必须实现speak方法")  没有直接报错


class Pig():
    def speak(self):
        print('哼哼哼')


class Dog():
    def speak(self):
        print('汪汪汪')

class Txt():
    def speak(self):
        print('Txt')


obj = People()
obj.speak()

image

这篇关于多态与多态性的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!