zoukankan      html  css  js  c++  java
  • day_19

    面向对象基础

    什么是面向对象

    面向对象指的是一门编程思想

    面向过程编程

    ​ 核心是“过程”二字,过程指的是做事情的步骤,即先做什么再做什么 基于该编程思想编写程序,就好比一条工厂流水线,一种机械式的思维方式。 优点: 逻辑清晰,复杂的问题流程化,进而简单化。
    ​ 缺点: 可扩展性差。

    面向对象编程

    ​ 核心是“对象”二字,对象指的是特征与技能的结合体。基于该编程思想编写程序,就好比在创造世界,一种上帝式的思维方式。
    ​ 优点: 可扩展性高。
    ​ 缺点: 编写程序的复杂程度要远高于面向过程编程思想。

    面向过程和面向对象的优先级使用

    面向过程结合面向对象一起使用

    什么是类

    类型,类别,分类

    先定义类,后调用类产生对象

    现实世界中

    对象是一个个具体存在的食物,类是由人类文明的发展抽象总结出来的

    程序中

    必须遵循,现有类,再有对象

    定义类

    1. 先从现实世界钟,基于一个个的对象,抽取出类
    2. 再定义类

    类:对象是特征与技能的结合体,类是一系列对象相同的特征与技能的结合体

    在定义类发生的事情:

    1. 类在定义时,会产生一个空的名称空间。

    2. 会把类内部所有名字,扔进类的名称空间中。

      注意: 类在定义阶段就已经产生好了名称空间,执行python文件时会执行类内部的代码。

    调用类发生的事情(******):

    1. 首先会产生一个空的对象,就是产生“对象的名称空间”。

    2. 会自动触发__init__

    3. 会把对象本身以及括号内的参数一并传给__init__函数。

      总结: 调用类会产生一个对象,调用类的过程叫做类的实例化,产生的对象称之为类的一个实例.

    __init__:

    会在调用类时,自动触发该函数。

    1. 类调用类内部的函数,只是调用普通函数.
    2. 对象的绑定方法特殊之处(******):
      • 由对象来调用的,会把对象当作第一个参数传入该方法中
      • 由不同的对象来调用,就会把不同的对象传给不同的绑定方法.
    选课系统项目:
        - 在现实世界中:
            学生对象1:
                特征:
                    school = 'oldboy'   #学校
                    name = '高峰峰'      #姓名
                    age = 93            #年龄
                    sex = 'female'      #性别
    
                技能
                    learn  学习
                    choose_course  选课
        
            学生对象2:
                特征:
                    school = 'oldboy'
                    name = '小丁丁'
                    age = 84
                    sex = 'female'
        
                技能
                    learn
                    choose_course
        
            学生对象3:
                特征:
                    school = 'oldboy'
                    name = '大丁丁'
                    age = 18
                    sex = 'male'
        
                技能
                    learn
                    choose_course
        
        类:
            相同的特征:
                school = 'oldboy'
        
            相同的技能:
                learn
                choose_course
    
  • 相关阅读:
    h5页面页面在iphoneX手机上底部会有留白解决办法
    自定义单张图片放大预览功能,可支持手势缩放,依赖jquery
    js事件内部有click事件时,click事件会重复调用解决方法
    h5页面通过阿里云的broswer-js-sdk上传文件
    python字符串前加r、f、u、l 的区别
    Python基础面试题 :计算列表中出现最多次的字符
    python基础入门教程:传参是传值还是传引用
    Python 面试题:输入一个数组,输出该数组的第二大的数字
    Python 7种超实用的数据清洗方法,这你一定要掌握
    python教程:3个非常有用的内置函数(filter/map/reduce)
  • 原文地址:https://www.cnblogs.com/maqiaobin/p/11641860.html
Copyright © 2011-2022 走看看