美文网首页
对象属性

对象属性

作者: 匿隱 | 来源:发表于2019-02-11 14:28 被阅读0次

1.什么是对象属性

类中的属性分为类的字段和对象属性

a.对象属性 - 属性的值会因为对象不同而不一样,这种属性就应该声明为对象属性

声明在init方法中 - 位置
以'self.属性名 = 值'的方式来声明(这儿的属性就是对象属性) - 方式
通过'对象.属性'的方式来使用 - 使用

b.类的字段 - 属性的值不会因为对象不同而不同,这种属性就声明成类的字段

直接声明类的里面,函数的外面的变量就是类的字段
以'字段名 = 值'
通过'类.字段'的方式来使用

class Person:
    # num就是类的字段
    num = 61

    # 在init方法中声明对象属性
    def __init__(self, name='', age=0):
        self.name = name
        self.age = age

练习:创建Dog类,有属性名字、类型、年龄

要求创建Dog的对象的时候:不能给年龄赋值,可以给类型赋值也可以不用给类型赋值,必须给名字赋值

对象方法eat:打印XXX在吃什么
class Dog:
    def __init__(self, name, type='土狗'):
        self.name = name
        self.age = 0
        self.type = type

    def eat(self, food):
        # self = dog1, food = '骨头'
        # self = dog2, food = '屎'
        print('%s在吃%s' % (self.name, food))

练习: 声明矩形类,拥有属性长和宽,拥有方法求面积和求周长

class Rect:
    def __init__(self, length: float, width: float):
        self.length = length
        self.width = width

    def area(self):
        return self.length * self.width

    def perimeter(self):
        return (self.length + self.width) * 2


def main():
    # 使用类的字段
    Person.num = 100
    print(Person.num)

    r1 = Rect(100, 98)
    print(r1.area())
    print(r1.perimeter())

    p1 = Person('小明', 18)
    # 获取对象属性的值
    print(p1.name, p1.age)

    p2 = Person('小红', 20)
    # 修改对象属性的值
    p2.name = '李四'
    print(p2.name, p2.age)

    dog1 = Dog('大黄')
    dog1.eat('骨头')

    dog2 = Dog('旺财', '中华田园犬')
    print(dog2.name, dog2.age, dog2.type)
    dog2.eat('屎')

相关文章

  • Object对象

    object 对象 在对象中保存的值称为属性 向对象中添加属性 语法:对象.属性名 = 属性值读取对象中的属性 语...

  • 第六章 面向对象的程序设计(js高级程序设计)

    Object-Oriented 面向对象 理解对象 对象属性分为 【数据属性】 和 【访问器属性】 对象属性中的【...

  • 07_类中的方法

    属性:对象的属性(属性).类的属性(类的字段)对象属性:属于对象的,不同的对象对应的值可能不一样(对象属性,通过对...

  • 2018-07-31python学习面向对象(三)类方法与对象方

    属性: 对象的属性(属性)、类的属性(类的字段)对象属性:属于对象的,不同对象对应的值可能不一样(对象属性,通过对...

  • hz-对象的属性深入理解

    Object.defineProperty(要操纵的对象,对象的属性,对象属性的配置) 对象的属性 分 数据属性和...

  • Vue动态修改属性同步渲染到页面

    给对象添加属性,修改属性 删除对象属性

  • 数值对象-Math对象

    一、Math对象的属性 Math对象的属性往往都是数学中常用到的“常量”,Math对象属性如下:Math对象属性 ...

  • JavaScript对象属性

    JavaScript对象属性 简单理解对象 运行环境 node V10.16.3 对象属性 数据属性数据属性包含...

  • JS 对象API之判断自有属性、共有属性

    自有属性:对象实例私有的属性,只有该对象实例可用共有属性:对象实例共有的属性,所有对象实例都可用 要判断对象实例的...

  • 函数详解

    对象介绍 创建对象的三种方式 给对象的属性赋值 删除对象的属性 检测对象是否拥有某一属性 遍历对象的属性 函数的本...

网友评论

      本文标题:对象属性

      本文链接:https://www.haomeiwen.com/subject/lykzdqtx.html