老雷python教程之python面向对象
https://www.liaoxuefeng.com/wiki/1016959663602400/1017501655757856
一、面向对象概念
1.概念
面向对象(Object Oriented,OO)其是以对象模型为基础进行的抽象过程,并在应用过程中形成了描述自己的抽象概念定义,包括对象、类、封装、继承以及多态等。
2.面向对象的三大特性
1、封装
隐藏对象的属性和实现细节,仅对外提供公共访问方式,提高复用性和安全性。
2、继承
提高代码复用性;
3、多态
父类或接口定义的引用变量可以指向子类或具体实现类的实例对象。提高了程序的拓展性。
二、类与对象
类通过class声明
对象是类的实例化
class Demo: n=1 def __init__(self,n=1): self.n=n def ec(self): print("n=",self.n) demo=Demo();
三、类的元素
属性 默认公开 __n 私有声明使用__
方法 def fun(self): def __fun(self):
构造函数 __init__() 初始化使用
析构函数 __del__ 释放对象时使用
四、类的继承和多态
类可以继承其他类,并且可以重写和者扩展类
多重继承,方法名同,默认调用的是在括号中排前地父类的方法
class Parent: def a(self): return "123" class Parent2: def b(self): return "123" class Child(Parent,Parent2): def c(self): return Parent.a()+Parent2.b() def a(self): return 333;
课后练习
写一个车的类
车
自行车
小汽车
挖掘机