• day16,成员(类,对象)


    一,成员:

      变量:

        1,实例变量,对象 . xxx = xxx 实例变量 --》字段 --》属性,给对象用的。

        

    class Person:
        def __init__(self, name, card_no, height, weight, address):
              # 实例变量. 给对象赋值
             self.name = name
             self.card_no = card_no
             self.height = height
             self.weight = weight
             self.address = address
    p1 = Person("老马", "1234", 1.60, 180, "深圳市南山区南")
    p1.company = "腾讯" # 添加实例变量-> 字段 -> 属性(java)

        2,类变量,直接写在类中的变量就是类变量,类变量一般用类名来访问

    class Person:
        country = "中国"
        def __init__(self,name, age):
            self.name = name
            self.age = age
    
    Person.country = "大清"  # 类变量
    print(Person.country) # 直接使用类名进行访问

    二,方法:

        1,实例方法,对象 . 方法()

    class Car:
        def run(self):
            print("会跑的车")
    
        def cul(self, a, b):
            return a + b
    
        def jump(self):
            print("you jump i jump")
    
    c = Car()
    c.run() # 调用实例方法
    print(c.cul(1 , 3))
    c.jump()

        2,类方法,    类名 . 方法()

    class Person:
    
        def chi(self): # 实例方法
            print("人在吃")
    
        # 类方法
        @classmethod # 类方法
        def he(cls): # cls 类
            print(cls)
            print("我是喝")
    
        @staticmethod
        def shui():  # 在类中定义的一个普通函数
            print("和你睡不等于睡你 -- 姜文")
    
        @staticmethod
        def 上天(height):  # 在类中定义的一个普通函数
            print("上天%s" % height)
    
    
    # print(Person)
    # Person.he()
    
    # p = Person()
    # p.he() # 不管用对象还是用类去访问类方法. 默认传递进去的是类
    
    Person.shui()
    Person.上天(500)
    #
    # p = Person()
    # p.shui()

        3,静态方法,类名 . 方法()

    三,属性 @property

        把方法转化成属性。

        对象 . 属性

    class Person:
        def __init__(self, name): # 构造, 创建对象的时候自动调用
            self.__name = name # 私有的
            print("这里是构造方法")
    
        def init(self):
            print("实例方法")
    
        def __chi(self): # 私有的
            print("我要吃. 疯狂的吃")
    
        def he(self):
            self.__chi() # 内部调用
            print("我是喝", self.__name)
    
    p = Person("孙艺珍")
    p.he()
    # p.init()
    # print(p.__name)

    四,私有:

        __做为前缀

        只能在自己类中随意访问,但是除了类就无法访问到这个私有内容。

      

  • 相关阅读:
    Unity 鼠标控制视角功能和动画播放冲突解决办法
    Unity5.6.4f1 配置WebGL教程
    动态生成圈形+文字的图片
    mysql 常用操作语句
    ideal环境maven自动下载项目依赖配置
    java调用c#dll文件配置
    项目部署到阿里云遇到数据库和访问问题解决记录
    uni-app打印
    JS将时间对象输出为(12小时制和24小时制)的字符串
    基于H5的摄像头视频的采集与传输
  • 原文地址:https://www.cnblogs.com/wm828/p/9937287.html
Copyright © 2020-2023  润新知