主函数 :
可以看到,我将小 汽车 实例化为带有重量为5t的一个具体对象,将客车实例化为带有重量为20t的一个具体对象,将三个公交车实例化为带有重量为15t的一个具体对象.
如上图所示,我每次在调用funcs方法时都传入了一个实例化对象 , funcs根据不同的对象执行相应的内部方法 。
Python中继承的理解与运用?9.5. 继承
当然python继承函数,如果一种语言不支持继承就python继承函数,“类”就没有什么意义 。派生类的定义如下所示:
class DerivedClassName(BaseClassName):
命名 BaseClassName (示例中的基类名)必须与派生类定义在一个作用域内 。除python继承函数了类,还可以用表达式,基类定义在另一个模块中时这一点非常有用:
class DerivedClassName(modname.BaseClassName):
派生类定义的执行过程和基类是一样的 。构造派生类对象时,就记住了基类 。这在解析属性引用的时候尤其有用python继承函数:如果在类中找不到请求调用的属性,就搜索基类 。如果基类是由别的类派生而来,这个规则会递归的应用上去 。
派生类的实例化没有什么特殊之处: DerivedClassName() (示列中的派生类)创建一个新的类实例 。方法引用按如下规则解析:搜索对应的类属性,必要时沿基类链逐级搜索,如果找到了函数对象这个方法引用就是合法的 。
派生类可能会覆盖其基类的方法 。因为方法调用同一个对象中的其它方法时没有特权,基类的方法调用同一个基类的方法时,可能实际上最终调用了派生类中的覆盖方法 。(对于 C++ 程序员来说,Python 中的所有方法本质上都是 虚 方法 。)
派生类中的覆盖方法可能是想要扩充而不是简单的替代基类中的重名方法 。有一个简单的方法可以直接调用基类方法,只要调用: BaseClassName.methodname(self, arguments) 。有时这对于客户也很有用 。(要注意只有 BaseClassName 在同一全局作用域定义或导入时才能这样用 。)
Python 有两个用于继承的函数:
函数 isinstance() 用于检查实例类型: isinstance(obj, int) 只有在 obj.__class__ 是 int 或其它从 int 继承的类型
函数 issubclass() 用于检查类继承: issubclass(bool, int) 为 True,因为 bool 是 int 的子类 。
然而, issubclass(float, int) 为 False,因为 float 不是 int 的子类 。
Python面向对象编程之继承与多态详解Python面向对象编程之继承与多态详解
本文实例讲述了Python面向对象编程之继承与多态 。分享给大家供大家参考,具体如下:
Python 类的继承
在OOP(Object Oriented Programming)程序设计中,当我们定义一个class的时候,可以从某个现有的class 继承,新的class称为子类(Subclass),而被继承的class称为基类、父类或超类(Base class、Super class) 。
我们先来定义一个class Person , 表示人,定义属性变量 name 及 sex (姓名和性别);
定义一个方法print_title():当sex是male时,print man;当sex 是female时,print woman 。参考如下代码:
class Person(object):
def __init__(self,name,sex):
self.name = name
self.sex = sex
def print_title(self):
if self.sex == "male":
print("man")
elif self.sex == "female":
print("woman")
class Child(Person):# Child 继承 Person
pass
May = Child("May","female")
Peter = Person("Peter","male")
print(May.name,May.sex,Peter.name,Peter.sex)# 子类继承父类方法及属性
May.print_title()
Peter.print_title()
而我们编写 Child 类,完全可以继承 Person 类(Child 就是 Person);使用 class subclass_name(baseclass_name) 来表示继承;
推荐阅读
- 视频号直播手机拉腿,微信视频号直播拉流
- 新建flutter项目报错,创建flutter项目
- 怎么获取苹果手机的ip,怎么获取苹果手机的数据
- 小明玩射击游戏的视频,小明开枪游戏规则
- linux命令call linux命令行快捷键
- 宝安马帮erp管理系统的简单介绍
- 国外1.8服务器ip大全,国外服务器配置
- 普适计算与普适gis,普适计算的两个关键特性是什么
- 函数可变参数python python函数的可变参数有哪几种