Python学习第八天 2020.8.8 面向对象

1、类:首字母大写,单词之间不用连接符,而用首字母大写;

2、类的实例化: student = Student()

3、调用类下的方法:student.print_file()

  

4、类最基本的作用:封装

  类内部使用变量,需要用“self.”进行引用,如:

 

   函数调用不要放在类里;

 5、方法:设计层面;函数:程序运行、过程式的一种称谓;

  类:更倾向于方法,类中的,更倾向于函数;

  数据成员:倾向于体现类的封装性;

6、实例化:用已有模板创建一个新的对象;

7、构造函数:def __init__():

  构造函数的调用是自动进行的;当然也可以自己主动显式的进行调用;

  构造函数返回值只能是None;

8、局部变量不会覆盖全局变量;

9、类变量:和类相关的变量;

   实例变量:和对象相关的变量;

10、实例方法:

 

 

   调用实例方法时不需要传参;

 

 

   

 

  构造函数用来初始化类的各种特征;实例方法用来调用和赋值;

 

 11、类方法:

  ,cls就是class的简写;

 

 

   最好不要对象去调用类方法;

12、静态方法:

  

 

 

   静态方法可以同时被类和对象调用;静态方法最好不要经常使用;当静态方法和类和对象没有太大关系时可以使用;

13、成员可见性(变量和方法的可见性):

  类包括内外调用;

  类的不安全性:当类在外部被调用时,就不安全了;

  通过方法对数据变量进行修改,比直接对数据变量进行修改安全很多;

  要想不让数据变量(public)被修改,将其改为私有的(private),但是python不支持这两个关键字,在方法/变量名前加两个下划线,表示私有,

      

  在变量前加“__”,变为私有变量,再从外部进行修改时,不会报错,是创建了一个新的实例变量,和原来的是不同的;(Python私有变量的保护机制就是给它改名..)

  

 

 

   

14、面向对象三大特性:继承性、封装性、多态性

  调用父类方法:

 

   上图是用类调用实例方法,本身不合理;但是如果要用的话,记得传入self;

  子类调用父类方法不推荐:如果要换个父类继承的话,需要进行大量代码修改;

15、super:以super进行父类的调用

  

 

   

 

posted @ 2020-08-07 22:55  小哪吒呀  阅读(150)  评论(0)    收藏  举报