程序笔记   发布时间:2022-07-18  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了python之面向对象大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

面向对象

1、面向过程编程

1、面向过程是什么
    面向过程的程序设计:核心是过程二字,过程指的是解决问题的步骤,即先干什么再干什么......面向过程的设计就好比精心设计好一条流水线,是一种机械式的思维方式。

2、优缺点:
    优点是:复杂度的问题流程化,进而简单化(一个复杂的问题,分成一个个小的步骤去实现,实现小的步骤将会非常简单)

    缺点是:一套流水线或者流程就是用来解决一个问题,生产汽水的流水线无法生产汽车,即便是能,也得是大改,改一个组件,牵一发而动全身。

3、应用场景:
    一旦完成基本很少改变的场景,著名的例子有Linux內核,git,以及Apache http Server等。

2、面向对象编程

1、什么是面向对象
    面向对象的程序设计:核心是对象二字,对象是特征与技能的结合体,基于面向对象设计程序就好比在创造一个世界,你就是这个世界的上帝,存在的皆为对象,
      不存在的也可以创造出来,与面向过程机械式的思维方式形成鲜明对比,面向对象更加注重对现实世界的模拟,是一种“上帝式”的思维方式。

2、优缺点
    优点:解决了程序的扩展性。对某一个对象单独修改,会立刻反映到整个体系中,如对游戏中一个人物参数的特征和技能修改都很容易。
    
    缺点:编程复杂度高,

3、应用场景
    需求经常变化的软件,一般需求的变化都集中在用户层,互联网应用,企业内部软件,游戏等都是面向对象的程序设计大显身手的好地方

3、类与对象

1、什么是类和对象
    对象是特征与技能的结合体,
    类则是一系列对象相似的特征与技能的结合体

2、先有类还是先有对象?
    在现实生活中,先有对象,再有类,也就说,对象是具体的存在,而类仅仅只是一个概念,并不真实存在

    在程序中,必须先定义类,在调用类产生对象,这与函数的使用是类似的,先定义函数,后调用函数,类也是一样的,在程序中需要先定义类,
      后调用类,不一样的是,调用函数会执行函数体代码返回的是函数体执行的结果,而调用类会产生对象,返回的是对象

3、定义类,产生对象
    定义类
      class 类名():
          pass
             
      def 函数名():
          pass

          类名: 一般是首字母大写
      class student():
        school = 'SH'

        def choose_course(stu_Dic, coursE):
            stu_Dic['courses'].append(coursE)
            print("%s 选课成功 %s" % (stu_Dic['name'], stu_Dic['courses']))
   类的名称空间
      print(student.__Dict__)
   造对象,调用类,产生对象
      stu1 = student()  # 调用类 产生空对象
      print(stu1.__Dict__)

  最终版本
      class student():
        school = 'SH'

        # 初始化方法
        def __init__(stu_obj, name, age, gender, courses=[]):
            stu_obj.name = name  # stu1.__Dict__['name'] = 'egon'
            stu_obj.age = age  # stu1.__Dict__['age'] = 20
            stu_obj.gender = gender  # stu1.__Dict__['gender'] = 'male'
            stu_obj.courses = courses  # stu1.__Dict__['courses'] = []

        def choose_course(stu_Dic, coursE):
            stu_Dic['courses'].append(coursE)
            print("%s 选课成功 %s" % (stu_Dic['name'], stu_Dic['courses']))

        # 类的名称空间
        print(student.__Dict__)
        stu1 = student('egon', 18 ,'male')  #造出stu1这个对象
        ==》init(stu1, 'egon', 18, 'male')
        print(stu1.__Dict__) 

        ps:左边相当于右边的,一般尽量不用————什么————的,这个一般是内置方法 
            stu1.name = 'egon'      # stu1.__Dict__['name'] = 'egon'
            stu1.age = 18           # stu1.__Dict__['age'] = 20
            stu1.gender = 'male'    # stu1.__Dict__['gender'] = 'male'
            stu1.courses = []       # stu1.__Dict__['courses'] = []

调用类的过程就是实例化, 得到的对象就是一个实例 4、属性查找

类有两种属性:数据属性和函数属性
    1. 类的数据属性是所有对象共享的,但是,类中的方法是给对象用的, 并且,把对象自己当成第一个参数传递
    2. 类的函数属性是绑定给对象用的
对象操作属性  
    点语法取值,先从自己对象中取,如果没有,在取类中取值

大佬总结

以上是大佬教程为你收集整理的python之面向对象全部内容,希望文章能够帮你解决python之面向对象所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。