Python零基础之面向对象
文章目录
一、什么是对象?
对象(Object)是一个应用系统中的用来描述客观事物的实体,是有特定属性和行为(方法)的基本运行单位。是类的一个特殊状态下的实例。
什么是面向对象编程
通过类创建一个实例对象,通过对象来完成具体的工作
二、类
类由两部分组成分别是:
- 类的属性:成员变量
- 类的行为:成员方法
如何定义成员方法
class Student:
name = None
__age = None
__init__(self, name, age):
self.name = name
self.__age = age
def call(self):
print(f'my name is {self.name},my age is {self.__age}')
以上代码中
def定义一个成员方法,__init__为构造方法,创建对象时会自动运行一次,常用于给对象赋初始值。
self的作用在于表示对象本身的意思,只有通过self,成员方法才可以访问成员变量
魔术方法
在python中有许多内置方法以__init__为例,被称作魔术方法
魔术方法 | 作用 |
---|---|
__str__ | 用于实现类对象转字符串 |
__lt__ | 比较对象之间大于或小于 |
__le__ | 比较对象之间大于等于或小于等于 |
__eq__ | 比较对象之间等于 |
三、面向对象三个基本特征
封装
什么是封装
把对象的属性和操作(或服务)结合为一个独立的整体,并尽可能隐藏对象的内部实现细节
私有变量和私有方法
以__开头的变量或者方法就称之为私有变量或者私有方法,只能在成员内部使用或访问,不能直接被对象访问
继承
什么是继承
一个类可以继承另一个类的成员变量和方法就是继承
class Student(Father, Mother, Teacher):
pass
子类对象可以独立用于成员变量和方法也拥有父类的成员变量和成员方法
单继承就是只继承一个父类
多继承就是继承多个父类
同名方法先继承的优先级高
pass的作用
是一个占位语句,可以使函数或类的定义具有完整性
没有具体实现的方法(pass)叫抽象方法
包含抽象方法的类叫抽象类
抽象类用于做顶层设计,约束子类具体实现
多态
什么是多态
同一种行为,使用不同对象具有不同状态
子类继承父类时,通过函数重写即可实现多态
总结
以上就是今天要讲的内容,本文仅仅简单介绍了python面向对象编程的基础知识