面向对象——对象的使用

Posted msj513

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面向对象——对象的使用相关的知识,希望对你有一定的参考价值。

对象

在编程中先定义类,才能声明类的对象。

class OldBoyStudent:
    school = "oldBoy"

创建对象

语法:在类名后加括号,与调用函数写法相同。

s1 = OldBoyStudent()

对对象的属性进行增删该查

print(s1.school)
#oldBoy

s1.age = 1
print(s1.age)
print(s1.__dict__)#存在类中公共属性的,不会再次存储
#1
#{‘age‘: 1}

s1.school = nice
print(s1.school)
print(s1.__dict__)#修改成为对象独有的属性
#nice
#{‘school‘: ‘nice‘}

删除

#删除对象的属性,只能删对象独有的属相,不能删除类的属性
s1.name = 2222
del s1.name
print(s1.__dict__)
#{}

对于对象查找属性的顺序:先对象自身的对象,后对象类的属性。

__init__对象初始化函数

其中self指的是声明时的对象,init函数相当于为其共有属性填写个性化的

__init__称之为初始化函数 他会在创建对象时自动执行,就是为对象的属性赋初始值。

创建对象时,

1.创建一个空对象

2。执行__init__函数,并且自动传入这个对象

class Dog:
    def __init__(self,name,age,color,gender):
        print(dog__init__函数生成)#定义对象时执行
        self.name = name#对象私有属性,并非类的对象
        self.age = age
        self.color = color
        self.gender = gender

#对象声明
d1 = Dog(lulu,2,yellow,female)
print(d1.__dict__)

#dog__init__函数生成
#{‘name‘: ‘lulu‘, ‘age‘: 2, ‘color‘: ‘yellow‘, ‘gender‘: ‘female‘}

使用场景

1.需要为每个对象定制不同的属性值

2.__init__在创建对象后自动执行

3.第一个self参数指的是这个这个对象本身不需要手动传值。

 

以上是关于面向对象——对象的使用的主要内容,如果未能解决你的问题,请参考以下文章

Scala的面向对象与函数编程

PHP面向对象之选择工厂和更新工厂

Java中面向对象的三大特性之封装

python之路之前没搞明白4面向对象(封装)

Python面向对象学习之八,装饰器

使用嵌套片段和动画对象