1.抽象类
如果大家学过java语言的话,那么一定对抽象类不陌生。同样作为面向对象的语言,Python也有抽象类。
1.1什么是抽象类?
如果说,类是对一堆对象共同内容的抽取,那么抽象类就是对一堆类共同内容的抽取,包括:属性和方法。
1.2抽象类的特点
(1)抽象类必须包含一个或多个抽象方法,也可以包含普通方法。
(2)抽象类的抽象方法,在抽象类中并不作实现。
(3)抽象类不能被实例化。
(4)抽象类的子类要想进行实例化,必须先实现抽象父类中的所有抽象方法!!!!!!!!!!!!!
1.3普通父类的示例
# coding:utf-8
# 不是抽象类,是一个普通父类
class Parent(object):
# 构造方法
def __init__(self, sex, surname, job):
self.sex = sex
self.surname = surname
self.job = job
# 已经实现的普通方法
def run(self):
print("running...")
def say(self):
print("saying...")
def is_adult(self):
print("True")
# 未实现的普通方法
def hobby(self):
pass
# 子类
class Son(Parent):
# 重写
def is_adult(self):
print("False")
# 实例化
s = Son(sex="male", surname="Zhang", job="student")
s.is_adult()
s.hobby()
1.4抽象父类的示例
#coding:utf-8
# 从abc库中导入ABC, abstractmethod模块
from abc import ABC, abstractmethod
# 抽象父类
class Parent(ABC):
# 构造方法
def __init__(self, sex, surname, job):
self.sex = sex
self.surname = surname
self.job = job
# 已经实现的普通方法
def run(self):
print("running...")
def say(self):
print("saying...")
def is_adult(self):
print("True")
# 抽象方法
@abstractmethod
def hobby(self):
pass
# 子类
class Son(Parent):
# 重写
def is_adult(self):
print("False")
# 实例化
s = Son(sex="male", surname="Zhang", job="student")
s.is_adult()
s.hobby()
文章来源:https://www.toymoban.com/news/detail-707287.html
1.5正确打开方式!!!
#coding:utf-8
# 从abc库中导入ABC, abstractmethod模块
from abc import ABC, abstractmethod
# 抽象父类
class Parent(ABC):
# 构造方法
def __init__(self, sex, surname, job):
self.sex = sex
self.surname = surname
self.job = job
# 已经实现的普通方法
def run(self):
print("running...")
def say(self):
print("saying...")
def is_adult(self):
print("True")
# 抽象方法
@abstractmethod
def hobby(self):
pass
# 子类
class Son(Parent):
# 重写
def is_adult(self):
print("False")
# 实现抽象父类的抽象方法
def hobby(self):
print("basketball")
# 实例化
s = Son(sex="male", surname="Zhang", job="student")
s.is_adult()
s.hobby()
文章来源地址https://www.toymoban.com/news/detail-707287.html
2.接下来的内容
下一篇将介绍:python中的继承与多态!!!
3.完结,撒花…
到了这里,关于Python中的抽象类(简单易懂版)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!