Python基础课程-⾯向对象编程
Python⾯向对象编程⾯向对象编程
在本⽂中,您将学习Python中的OOP的以下基本概念:
Python类
对象实例
定义和使⽤⽅法
OOP继承
什么是⾯向对象编程(什么是⾯向对象编程(OOP)?)?
⾯向对象编程(Object-oriented Programming,简称OOP)是⼀种编程范例,它提供了⼀种结构化程序的⽅法,以便将属性和⾏为捆绑
到单个对象中。
例如,对象可以表⽰具有姓名属性,年龄,地址等的⼈,具有⾏⾛,说话,呼吸和跑步等⾏为。或者包含收件⼈列表,主题,正⽂等属性的
电⼦邮件,以及添加附件和发送等⾏为。
换句话说,⾯向对象编程是⼀种, 可以为具体现实世界的事物建模的⽅法,如汽车以及公司和员⼯,学⽣和教师等事物之间的关系. OOP将
现实世界的实体建模为软件对象,以及与之相关的数据,并可以执⾏某些功能。
另⼀种常见的编程范例是函数式编程,其构造类似于顺序执⾏的程序,因为它以函数和代码块的形式提供⼀组执⾏步骤,这些步骤⼀步步执
⾏以完成任务。
关键的⼀点是,对象是⾯向对象编程范例的核⼼,不仅在函数编程中表⽰数据,⽽且在程序的整体结构中也是如此。
注意:由于Python是⼀种多范式编程语⾔(也就是说⾯向对象或者函数式编程都是可以的),您可以选择最适合⼿头问题的范例,在⼀
个程序中混合使⽤不同的范例,和/或随着程序的发展从⼀种范例切换到另⼀种范例。
Python中可⽤的原始数据结构(如数字,字符串和列表)旨在分别表⽰简单的事物,例如某事物的成本,诗歌的名称和您喜欢的颜⾊。
例如,假设您想跟踪许多不同的动物。如果您使⽤了列表,则第⼀个元素可以是动物的名称,⽽第⼆个元素可以表⽰其年龄。
你怎么知道哪个元素应该是哪个?如果你有100种不同的动物怎么办?你确定每只动物都有名字和年龄,等等吗?如果你想为这些动物添加
其他属性怎么办?这就是为什么我们需要⼀个"类"(Class)。
类可以⽤来创建新的⽤户定义的数据结构,其中包含有关内容的任意信息。对于动物,我们可以创建⼀个Animal( )类来跟踪关于Animal的
属性,如名称和年龄。
注意, ⼀个类只提供结构 - 它是应该如何定义某个东西的蓝图,但它实际上并不提供任何真实的内容. Animal( )类可以指定名称和年龄, 是定
义动物所必需的,但它实际上不会包含特定动物的名字或年龄。
虽然类是蓝图,但实例是具有实际值的类的副本,字⾯上是属于特定类的对象。这不再是⼀个想法;它是⼀只真正的动物,就像⼀只名叫罗杰
的狗,已经⼋岁了。
换句话说,类就像⼀个表格或问卷。它定义了所需的信息。填写表格后,您的特定副本就是该类的⼀个实例;它包含与您相关的实际信息。