如何问问题:
1.首先查报错的原因 2.百度查一下,查资料. 3.先经过自己的思考,有了自己的观点再问.
如何学习:
1.拿着老师的笔记练习,边思考边练习.
2.模棱两可的知识点一定一定记上,然后自己研究,最后再问老师.
3.做作业,先将简单的题,基础题一定要自己做出来.
4.做好预习,半小时到一个小时看博客,有代码就要自己练.每周将本周的所有作业知识点重新整理.
1.初始面向对象
2.面向对象的结构
3.类名调用变量, 方法
4.实例化对象
5.实例化对象的内部过程
6.对象调用变量,方法
类具有相同的属性和技能的一类事物
研究面向对象:你要站在上帝的角度
class(关键字) Person(类名):
level = "高级动物'' #变量 第一部分,静态变量(静态字段)
mind = "有思想"
language = "语言"
def __init__(self,name,age): #构造方法
self.name = name #self.name name是对象属性
self.age = age
def work(self,eye):
self.eye = eye #第二部分:动态方法,函数
def eat(self):
pass
类名 : 类名查看类中所有的变量(字段),方法(函数)
print(Person.__dict__)打印类名里所有的东西
类名对静态变量(静态字段)进行操作最好不要通过__dict__这个字典进行操作
print(Person.__dict__["mind"]) #可以查值
通过 类名.__dict__ 不要用这个方法进行增删改查.
Person.__dict__ 不能增加值,删除值,更改值,只能查询.
小总结:查询类里面所有的变量及方法 Person.__dict__
(增删改)查询单个变量不要用Person.__dict__
(常用)通过 类名.变量 print(Person.mind)可查询
Person.create = "有创造力" #可增加
Person.mind = "行尸走肉" #可改变
del Person.mind #可删除
类名对动态方法(函数)进行操作.
1.通过 类名.__dict__ #不建议用这个方法
2.类名.方法名 例:Person.work(参数) #调用方法
实例化对象 : 类名+括号 就是实例化对象
ab = Person() 这个过程就叫做实例化一个对象
具体过程如下:
1.产生一个空的对象空间
2.类名 + () 自动执行类中的__init__方法 并把空的对象空间传给self
3.执行init方法,给对象封装属性并将完善好的这个对象返回给类名.
对象 : 查找对象中的所有属性 方法: print(ab.__dict__)
对象操作对象中属性 : 对象可以增删改查.
例: ab.name = "王二小" #增
del ab.name #删
del ab.age = 23 #改
print(ab.age) #查
对象操作类中的静态变量(静态字段)
print(ab.name) #可以查类中的静态字段
ab.level = "中等动物" #对象中设置新属性,而不是改变类中的level.
对象操作类中的静态变量(静态字段)只能查询不能增删改.
以后执行类中的方法只用 对象.方法名(参数) 不用 类名.方法名(参数)
例:ab.walk(如果函数里只有一个形参self,这里面不用传参)
1.self 位置参数,默认接受的是对象空间,约定俗成叫self.
2.__init__ 构造方法 在类的非 __init__方法中也可以给对象添加一些属性,前提必须先执行这个方法.