day7 异常处理 面向对象

异常处理

  try:  可能出错的代码

      except Exception as e :  出错执行的代码

  else: 没有出错执行的代码

  finally:有没有出错,都会走的这里,可以没有这个finally(也可以不写这个)

 

 

 -----------------------------------------

以连接数据库为例

 

 

 -----------------------------------

用异常判断价格

 

 

 --------------------------------------------------

主动抛出异常    raise  Exception("不在执行")   后面再有代码也不执行。对一个结果做一个判断,如果不是需要的结果则主动抛出异常,停止程序运行

 

 

 -----------------------------------------------------------------------------------------------------------------------------

面向对象 (就是类,对于一些复杂的功能用类)切记用类里的变量,调用函数

  面向过程:第一步 做什么,第二部做什么么,顺着往下走

  面向对象:就是针对一个整体

        类:一个模型,一个图纸          对象的集合即为类

        对象:根据模型做出来的东西就是实例

        实例:实例和对象是一回事

        实例化:就是根据模型做具体东西的过程

        self:本类对象。实例化出来的是谁,谁就是self

        抽象类:一个规范。在规范里通过@abstratmethod修饰方法,在子类里,要实现这个方法。抽象类不能被调用,只能用来继承

        继承:私有 方法私有 变量不糊被继承 ,可以继承多个类。

         1.如果要在父类方法的基础上重写扩展功能,super().xxxx调用父类,然后把对应的参数,传入即可

          super会自动找到父类

        实例方法:必须要经过实例化之后才能使用的函数 ,可以调用  类方法,静态方法,实例方法

        实例变量:类的属性叫变量,经过实例化之后才能使用的变量叫实例变量

        构造函数:类在实例化的时候会自动执行构造函数

        类变量:在类里定义的变量

        类方法:类定义好之后就可以使用的方法,不需要实例化,类名可以调用,实例也可调用

        静态方法:只是写在类里面的一个方法,不能使用类变量,也不能调用其他的方法,相当于一份说明书     @staticmethod  def  help() :  print("") 定义在类里的一个普通函数

        属性方法:看起来像变量的一个函数,属性方法不能有参数           @propery  def prince(self) : ...... .       调用的时候 不用加括号     xh.prince

        析构函数:实例被销毁的时候自动调用的方法

        私有变量:只能在类里面调用,出了类就不行

        私有方法:只能在类里面调用

 -------------------------

1,什么是面向过程,什么是面向对象

 

 

 

 2.

1.把类经过实例化变为对象(也叫实例)    2.带self的方法或变量,必须经过实例化后才能使用

3.构造函数(连接数据库),实例化的时候自动执行的构造函数;相反析构函数,实例被销毁执行的函数(析构函数关闭文件或数据库)

4.私有方法  私有变量

5.self 本类对象,也就是mysql,实例化出来是谁,谁就是self

 

 

3.

1.类方法、类变量   2. 静态方法  3.属性方法

 

 

4.析构函数

 

  

 -------------------------------------------------------

继承,封装(功能封装起来)

1.继承  一个类继承另外一个类,可以用父类的方法。可以继承n多类。。。Xw.mro()    方法相同时,看先继承那个类。。。如果 子类有和父类一样的方法时,就是 重写

2.私有方法,私有变量不会被继承

3.super() 自动找父类,调用父类的方法,拿父类的变量用

 

 

 ----------------------

super 在父类基础上重写扩展功能

 

 ---------------------------------

 抽象类       abc 是python内置的一个模块

 抽象类,只是用来继承的  如果抽象类里面的函数通过abstractmethod修饰,那就在子类里面必须实现

 

 ---------------------------------------------------

反射

 

 

 

 

封装  一个请求的   类.

 

posted @ 2019-11-17 01:35  戒七  阅读(115)  评论(0编辑  收藏  举报