一、类和对象
类的意思:种类、分类、类别
对象是特征与技能的结合体,我可能有身高体重、而你也有身高体重,所以你会说你像我,但是你一定不会说你像阿猫阿狗。并且我和你其实就可以说成是一类,而你和选课系统不能说是一类,因此给出类的定义:类就是一系列对象相似的特征与技能的结合体。
二、现实世界中定义类和对象
1定义对象
拿我们的选课系统来说的话,我们先总结一套现实世界中的学生对象
对象1:
特征:
学校 = ’xiwangzhongxue‘
姓名 = ’小明‘
年龄 = 18
性别 = ’male‘
技能:
选课
学习
对象2:
特征:
学校 = ’xiwangzhongxue‘
姓名 = ’小红‘
年龄 = 18
性别 = ’male‘
技能:
选课
学习
2定义类
站在未来选课系统的角度,我们还可以总结现实世界中的学生类:
希望中学学生类:
相似的特征:
学校='xiwangzhongxue'
相似的技能
选课
学习
三、程序中定义类和对象
1定义类
曾经定义函数,函数只检测语法,不执行代码,但是定义类的时候,类体代码会在类定义阶段就立刻执行,并且会产生一个类的名称空间,也就是说类的本身其实就是一个容器/名称空间,是用来存放名字的,这是类的用途之一
定义类名时我们推荐使用驼峰体
关键字class 类名:
class Students:
shool = 'xiwangzhongxue'
def choice(self):
print('选课。。。。')
def study(self):
print('学习。。。。')
使用类
2定义对象
调用类即可产生对象,调用类的过程,又称为类的实例化,实例化的结果称为类的对象/实例
对象名 = 类名()
stu1 = Student()
print(stu1)
<main.Student object at 0x000001EE24F2C198>
四、类和对象的使用
1获取类的属性和方法
print(Student.__dict__)
{'module': 'main', 'school': 'oldboy', 'func1': <function Student.func1 at 0x000001EE25195620>, 'func2': <function Student.func2 at 0x000001EE2C0C59D8>, 'dict': <attribute 'dict' of 'Student' objects>, 'weakref': <attribute 'weakref' of 'Student' objects>, 'doc': None}
2获取对象的属性和方法
print(stu1.__dict__)
{}
3类使用方法和对象使用类的方法的区别
类使用方法
- 其实就是在调用函数
- 类使用方法时,调用类的方法的时候必须向函数方法传进对应的参数
Student.choice(stu1)
选课。。。。
对象使用类的方法
- 调用类里的方法
- 对象使用方法时,调用类不需要向方法传第一个参数
stu1.choice():
选课。。。。
五、对象的属性赋值
1通过对象自身来赋值属性
stu1.name = '小明'
print(stu1.__dict__)
print(stu1.name)
{'name':'小明'}
小明
2通过类中的__init__的方法
class Student:
school = '希望中学'
def __init__(self,name):
self.name = name
def choice(self):
print('选课...')
def study(self):
print('学习....')
stu1 = Student('小明')
print(stu1.__dict__)
print(stu1.name)
废了嘛?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)