• 面向对象初识


    面向过程式编程:

    1.重复代码多

    2.可读性差

    函数式编程:

    1.重复代码少

    2.可读性强

    面向对象:

    1.类是一组具有相似功能的集合,使代码的组织结构更加清晰和规范化

    2.要具有上帝的思维,用面向对象设计程序,类是一个公共模板,对象去操作使用这个模板

    类是具有相似功能和属性的一类事物

    类的结构:

    class 类名(首字母大写):

      第一部分:静态属性(属性,变量,静态字段)

      第二部分:动态属性(方法,函数)

    class Human:
        mind = '有思想'                     #静态属性
        language = '语言'
        shape_list = ['四肢','五官']
        def work(self):                      #方法
            print('工作')
        def eat(self):
            print('吃饭')

    从类名的角度进行操作:

     1.查看类中的所有内容

      print(类名.__dict__)    以字典的形式返回

    2.万能的点  .   

    Human.emotion = '有情感'            #
    del Human.language                 #
    Human.mind = '无脑的'               #
    print(Human.shape_list)            #

    3.代码中除去静态方法和类方法,一般不用类名去执行类中的方法

    对象

    类的具体体现,具体到一个对象

    类名()    实例化过程,产生一个对象

    class Human:
        mind = '有思想'                   
        language = '语言'
        shape_list = ['四肢','五官']
        def __init__(self,name,sex,age):
            self.n = name
            self.s = sex
            self.a = age
        def work(self):                   
            print('工作')
        def eat(self):
            print('吃饭')
    obj = Human('alex','',18)     #实例化对象            
    print(obj.__dict__)

    实例化对象发生三步:

    1.在内存中开辟一个对象空间

    2.自动执行__init__方法,并将对象空间传给self

    3.执行__init__的代码,给对象空间封装属性

    从对象的角度操作类:

    1.对象查看对象空间的所有属性

      print(obj.__dict__)  

    2.对象操作对象空间的属性--万能的点  .

    obj.h = 180                 #
    del obj.n                   #
    obj.s = ''                 #
    print(obj.a)                #

     3.对象查看类中的静态属性,注意只能查看

    print(obj.mind)

    4.对象调用类中的方法,就会将对象空间自动传给方法的第一个参数self

    补充:

    self :类中的所有方法(类方法,静态方法)的第一个参数,都会默认接收对象空间,所以为了方便和区分,把第一个参数约定俗成为self

    一个类可以实例化多个对象

  • 相关阅读:
    Restful接口传入多参数
    map转换成JSON的3种方式
    项目打包后执行start.sh提示“no such file or directory”解决办法,linux中给文件增加权限
    如何将一个a表a1字段与b表b1字段的笛卡尔积插入到e表中
    get、set方法的取代注释之lombok插件
    推荐 33 个 IDEA 最牛配置转(Java技术栈)
    mysql-----group by 对多个字段进行分组
    mysql获取某段时间内每一天的统计数据
    发票流水号生成方式
    postman之post请求传参
  • 原文地址:https://www.cnblogs.com/sandy-123/p/10314885.html
Copyright © 2020-2023  润新知