奉贤区做网站,seo营销外包公司,南宁市建设厅官方网站,网站建设及制作教程1.继承
Python 的类是支持继承的#xff1a;它可以使用现有类的所有功能#xff0c;并在无需重新编写代码的情况下对这些功能进行扩展。
通过继承创建的新类称为 “子类”#xff0c;被继承的类称为 “父类”、“基类” 或 “超类”。
继承语法是将父类写在子类类名后面的…1.继承
Python 的类是支持继承的它可以使用现有类的所有功能并在无需重新编写代码的情况下对这些功能进行扩展。
通过继承创建的新类称为 “子类”被继承的类称为 “父类”、“基类” 或 “超类”。
继承语法是将父类写在子类类名后面的小括号中 class A:
... x 520
...
... def hello(self):
... print(你好我是A~)
...class B(A):
... pass
...b B()b.x
520b.hello()
你好我是A~基于上面代码的继承关系类 A 就是父类类 B 则是子类。
如果在子类 B 里面存在跟父类 A 一样的属性和方法名那么子类就会覆盖父类 class B(A):
... x 880
...
... def hello(self):
... print(你好我是B~)
...b B()b.x
880b.hello()
你好我是B~2.isinstance和issubclass
isinstance() 函数用于判断一个对象是否属于某个类。 issubclass() 函数用于判断一个类是否属于某个类的子类。 小甲鱼友情提示
在还没有学习 isinstance() 函数之前我们使用 type() 函数判断对象的类型其实这对 type() 函数来说真有点大材小用了type 其实是 Python 中的神学到后面你们就知道了o。
对于检测对象类型也就是检测对象所属的类这件小事来说使用 isinstance() 函数无疑是更名副其实的
另外使用 isinstance() 函数还会将父类考虑进去 class A:
... pass
...class B(A):
... pass
...b B()isinstance(b, B)
Trueisinstance(b, A)
Truetype(b)
class __main__.B3.多重继承
Python 的类是支持多重继承的也就是一个子类同时可以继承多个父类 class A:
... x 520
... def hello(self):
... print(你好我是A~)
...class B:
... x 880
... y 250
... def hello(self):
... print(你好我是B~)
...class C(A, B):
... pass
...issubclass(C, A)
Trueissubclass(C, B)
True如果实例化一个类 C 的对象为 c那么访问 c.x 和调用 c.hello() 得到的结果分别是 c C()c.x
520c.y
250c.hello()
你好我是A~从例子中可以看出对于多个父类拥有相同属性和方法的情况它的访问顺序是按从左到右的。
4.组合
类的组合跟继承不同继承是具有上下从属关系而组合的多个类则是同级关系下面代码演示的就是类的组合 class Turtle:
... def say(self):
... print(不积跬步无以至千里)
...class Cat:
... def say(self):
... print(喵喵喵~)
...class Dog:
... def say(self):
... print(哟吼我是一只小狗~)
...class Garden:
... t Turtle()
... c Cat()
... d Dog()
... def say(self):
... self.t.say()
... self.c.say()
... self.d.say()
... g Garden()g.say()
不积跬步无以至千里
喵喵喵~
哟吼我是一只小狗~5.思维导图