zoukankan      html  css  js  c++  java
  • 实例属性和类属性

    # 修改类的方法:
    1,Person.country = '日本' 通过类名来修改
    2,p.__class__.country = '日本' 通过实例进行修改(也是要先获取类,本质还是通过类进行修改)

    # 实例可以访问类属性,但不能修改,(通过实例修改类属性,会给实例添加新的属性,不是修改,可用p.__dict__查看)

    class Person(object):
    country = '中国'

    def __init__(self, name, age):
    self.name = name
    self.age = age


    p =Person('李四', 24)
    print(p.name)

    p.name = '张三' #实例属性可以修改 没有该属性就是添加

    print(p.country) #访问类属性

    # print(p.__dict__)
    # p.country = '美国' #对象不能修改类属性,这样会添加一个实例属性
    # print(p.__dict__)

    #修改类属性,不需要通过实例
    Person.country = '日本'
    print(p.country) #如果实例有该属性,访问的是实例属性,不是才会去查找类属性

    #修改类的私有属性
    print(Person.__dict__) #查看包装后的名称,然后在修改(非常规手段)
    Person._Person__sink_color = '白种人'

    print(p.__class__) #通过对象获取类属性
    p.__class__.country = '加拿大'
    print(Person.__dict__)

  • 相关阅读:
    ModelMap和ModelAndView的作用
    jquery 临时存值
    条件sql ibatis
    IBATIS动态SQL
    MyEclipse 快捷键
    jquery $用法
    弹窗案例
    Ibatis sql语句1
    Ibatis sql语句
    jQuery的三种$()
  • 原文地址:https://www.cnblogs.com/wjun0/p/11515404.html
Copyright © 2011-2022 走看看