python中面向对象基础内容整理
我们在python学习的过程中,也接触了不少面向对象的知识,不过没有系统的了解过其中的内容。看似面向对象的概念没有复杂的理解,但因为基础要点比较多,有一些使用上会直接用英文名称展现,对于python初学者来说,看到面向对象时候往往不知道如何使用了。今天小编为大家整理了python中面向对象基础内容,帮助大家系统的了解面向对象里的知识点。
类class
类(Class)是用来描述具有相同属性(Attribute)和方法(Method)对象的集合。
对象object
对象(Object)是类(Class)的具体实例。
举例:比如学生都有名字和分数,他们有着共同的属性。这时我们就可以设计一个学生类, 用于记录学生的名字和分数,并自定义方法打印出他们的名字和方法。
属性(Attribute): 类里面用于描述所有对象共同特征的变量或数据。比如学生的名字和分数。
方法(Method): 类里面的函数,用来区别类外面的函数, 用来实现某些功能。比如打印出学生的名字和分数。
self,cls关键字
self是指向每个独立对象的指针.在实例方法中第一个形参被命名为 self,以区别其它函数。
cls是指向类的指针,在类方法中第一个形参要命名为cls.
类内部的不同类型方法
是指该类的每个实例都可以调用到的方法。只有实例能调用实例方法。定义时第一个形参为self
类方法是将类本身作为对象进行操作的方法。类对象和实例都可以调用类方法。定义时以@classmethod进行装饰,其第一个参数是类,约定写为cls。
实例方法和类方法都是依赖于python的修饰器来实现。 对象方法以self参数,类方法以cls参数来传递。
可以认为静态方法是一种存在在类中普通函数,不会对任何实例类型进行操作,类对象和实例都可以调用静态方法,定义时以@staticmethod进行声明。
类变量和实例变量
类变量定义在类的内部,像普通变量一样定义即可。用 类名.变量名 直接去访问。实例也能访问类变量
实例变量则是以self.开头,仅供各个实例对象
封装
封装就是将抽象的数据(变量)和行为(函数)打包,形成一个逻辑上的整体(即类);
封装可以增强安全性(数据)并简化编程(函数),用户只能通过类对外接口的访问权限来使用类的成员。
继承
一个类可以以 class newclsname():来开始全新构造(实际上会默认继承自object);也可以从某个已经存在的类继承。继承的类叫做subclass。
多态
因为类具有继承关系,子类可以向上转型被看做是父类的类型,比如无论是战士还是快递员,都是人类。
也因为有了继承关系,子类可以继承父类的所有方法和属性,当然也可以重载父类的成员函数及属性。
super()
在子类中如果想调用父类中的方法,就需要使用super()方法。
以上就是python中面向对象基础内容的整理,相信看完之后我们就能更好的进行面向对象的运用,学过的小伙伴也可以进行一次知识的回顾。
本文链接:http://so.lmcjl.com/news/10099/