类、对象体系

类、对象体系,第1张

概述类、对象体系一.Python面向对象特点二.Python类、对象体系2.1实例对象、类型对象、type类型2.1.1内置类型2.1.2自定义类型2.2object类型2.3type和object类间的关系2.4类、对象关系图示一.Python面向对象特点Python所谓的“一切皆对象”总结而言可以理解如

类、对象体系一. Python面向对象特点二. Python类、对象体系2.1 实例对象、类型对象、type类型2.1.1 内置类型2.1.2 自定义类型2.2 object类型2.3 type和object类间的关系2.4 类、对象关系图示

一. Python面向对象特点

Python所谓的“一切皆对象”总结而言可以理解如下,

Python语言中,基本类型也是对象。相比其他语言,Python不再区别对待基本类型和对象,所有基本类型内部均由对象实现。 一个整数是一个对象,一个字符串也是一个对象。类型也是一种对象 ,称为类对象。 整数类型是一个对象,字符串类型是一个对象,程序中通过 class 关键字定义的类也是一个对象。通过类型实例化得到的对象,称为实例对象。

Python面向对象最大的特点可以总结为,“ 类 ”和“ 对象 ”在 Python 内部都是通过对象实现的。

二. Python类、对象体系2.1 实例对象、类型对象、type类型2.1.1 内置类型

以int类为例,

变量a是个整数对象(实例对象),其所属类是整数类型(类型对象)

>>> a = 1>>> type(a)<class 'int'>>>> isinstance(a, int)True>>> type(int)<class 'type'>

整数类型的类型是“type”,即类型的类型。type类型比较特殊,它的实例对象还是type类对象。

2.1.2 自定义类型

自定义一个狗类型(Dog)及其子类—猎狗类型(Sleuth),

class Dog(object):    def yelp(self):        print('woof')class Sleuth(Dog):    def hunt(self):        pass

测试代码如下,

>>> dog = Dog()>>> dog.yelp()woof>>> type(dog)<class '__main__.Dog'>>>> type(Dog)<class 'type'>>>> sleuth = Sleuth()>>> sleuth.hunt()>>> type(sleuth)<class '__main__.Sleuth'>>>> type(Sleuth)<class 'type'>>>> issubclass(Sleuth, Dog)True
2.2 object类型

Python中除object类自身外,其他类型均继承于object类,即object 是所有类型的基类。

>>> issubclass(int, object)True>>> issubclass(Dog, object)True>>> issubclass(Sleuth, object)True
2.3 type和object类间的关系object 类是所有类型的基类,本质上是一种类型,因此其类型必然是type。type类是所有类型的类型,本质上也是一种类型,因此其类型必须是它自己。object是所有类型的基类,理论上object类也是type类的基类。

上述结论用代码表示如下,

>>> type(object)<class 'type'>>>> type(object) is typeTrue>>> type(type)<class 'type'>>>> type(type) is typeTrue>>> issubclass(type, object)True>>> type.__base__<class 'object'>
2.4 类、对象关系图示

将2.1-2.3节的内容使用关系图表示,

总结

以上是内存溢出为你收集整理的类、对象体系全部内容,希望文章能够帮你解决类、对象体系所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1184888.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存