python面向对象编程

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python面向对象编程相关的知识,希望对你有一定的参考价值。

  1. java和c#只支持面向对象编程,python即可支持面向对象也可以支持函数式编程.

  2. 面向对象两个重要的概念:  1.类 2.对象

  3. 函数式 def sendemail(email,msg):            函数

            print("8888")

  4. 面向对象 class Myclass:

            def sendmail(self,email,msg):      函数定义在类中第一个参数必须是self

             print("8888")              函数在类中定义叫方法


5.面向对象首先得创建类,然后再创建对象.类中的方法只能通过类的对象来调用.

6.面向对象中方法中第一个参数self的实质

 class SQLHelper:

   def __init__(self):

      pass

   def query(self,sql):

      print(self.host)

 obj1 = SQLHelper() //当一个类名的后面加了一个括号的话,就会自动调用类中的__ini__()方法

 obj1.host="1.1"

 obj1.query(sql)  //obj1调用SQLHepler中的query方法是,query方法中第一个参数self表示obj1

 

 obj2 = SQLHelper()

 obj2.host ="1.2"

 obj2.query(sql) //obj2调用SQLHepler中的query方法是,query方法中第一个参数self表示obj2


7.python类中被调用的方法不一定要在调用方法之前定义(不用关心方法的定义顺序,先执行了_init_),

 这点和python函数式编程不一样(调用的函数必须定义在被调用函数之后,代码从上往依次执行).


8.函数式的应用场景 --> 各个函数之间是独立且无共用的数据

 面向对象应用场景 --> 各个函数之间存在大量重复调用

 面向对象的封装来说,其实就是使用构造方法将内容封装到对象中,然后通过对象直接或者self间接

 获取被封装的内容


9.多态

 在python中函数中的参数无需指定参数类型可以接收任意类型的参数,自动实现了多态

 其他语言通过类继承的方式,函数中的参数必须是指定的类型或者指定类型的子类型来实现多态

10.


本文出自 “天下第一” 博客,谢绝转载!

以上是关于python面向对象编程的主要内容,如果未能解决你的问题,请参考以下文章

Python入门-6面向对象编程:01面向对象和面向过程区别-对象的进化

面向对象编程其实很简单--python面向对象(初级篇)

Python 进阶 — 面向对象编程

Python之面向对象

2020Python修炼记面向对象编程——类与对象

python--面向过程编程与面向对象编程