今日内容
面向过程概念
面向过程:
不是一门技术, 是一种编程思想
核心是过程两个字
过程就是先干什么,再干什么,最后干什么
优点:
复杂的问题简单化,流程化
缺点:
牵一发而动全身,扩展性差
应用场景:
对扩展性要求不高的
问题:
实现用户注册
1.输入用户名密码
2.验证参数
3.注册
面向对象概念
面向对象
核心是对象二字
1.程序里面
对象技术盛饭数据属性和功能的容器
2.现实中
对象就是特征与技能的结合体
linux:一切皆文件
优点:扩展性强
缺点:编程复杂度更高
应用场景:对扩展性要求较高的场景,比如:qq,微信
案例:
学生选课系统
类的定义和对象的产生
对象:特征和技能的结合体
类:一系列对象相似的特征和相似的技能的结合体
强调:站在不同的角度,划分的分类是不一样的
问题:先有类还是先有对象?
1.在现实中:
必须现有对象,再有类
2.在程序中:
必须先定义类,再调用类的对象
类定义阶段发生了什么事?
1.立即执行类体代码
2.产生了类的名称空间,把类里面的名字都扔到字典里面
3.把类的名称空间绑定给类名
产生对象发生了什么事?
产生一个空对象,当成第一个参数传递
数学或者方法的查找
1.类的属性查找
类本身肯定能调用
类中增删
Student.xxx = 'xxx'(添加)
del Student.xxx (删除)
2.点语法取值,先从自己的对象中取,如果去不到,再去类中取值
对象中增删
stu1.xxx = 'xxx'
del stu1.xxx
如果类中的值改变,对象取出来的时候也变了
类中的属性是共享给所有对象的,对象,但是类中的方法是给对象用的