目录
11月的第一次周报
面向对象之类与对象
对象:数据与方法的结合体
类(子类):多个对象相同数据与方法的结合体
父类:多个类(子类)相同数据与方法的结合体
定义类
class 类名首字母大写:
"""注释"""
数据
方法
使用类/创建对象
类名.属性/方法
对象变量名 = 类名()
对象变量名.属性/方法
对象独有的数据与方法
对象的独有数据属性可以在类中调用
一般在类中创建的方法称为绑定方法,也是调用者(对象)的独有方法
可以通过
对象变量名.属性名 = 数据值 添加或修改独有数据
编程思想
面向过程编程
对问题分析,进行一步一步做什么,每一步都离最终结果更进一步
面向对象编程
类似于我们造物者,我们只管造各种各样的方法与属性,至于怎么使用的出现什么结果,我们不考虑
动静态方法
动态方法就是可以动态传值
@classmethod放在绑定方法上
静态方法就是在类中建立一个独立的函数,
@staticmethod放在绑定方法上
继承的概念/本质
1.继承的本质就是节省代码
继承就相当于儿子继承父亲的财产
父亲有多少钱儿子就有多少钱,
父亲能用的物件儿子也能用
名字的查找顺序
对象名称空间 》》》产生对的类》》》类的父类》》》object类
按照继承顺序
从左到右
非菱形,深度优先,一直找到低
菱形,广度优先,最好找顶点类
经典类与新式类
python3中没有经典类全部都是新式类
即继承object类
class 类名(object)
python2中有新式类与经典类
经典类就是不继承object类及其子类的类
派生方法
派生方法就是子类基于父类的某个方法做了扩展
class Person:
def __init__(self, name, age, gender):
self.name = name
self.age = age
self.gender = gender
class Student(Person):
def __init__(self, name, age, gender, sid):
super().__init__(name, age, gender) # 子类调用父类的方法
# super(父类,self)
self.sid = sid
class Teacher(Person):
def __init__(self, name, age, gender, level):
super().__init__(name, age, gender)
self.level = level
stu1 = Student('jason', 18, 'male', 666)
print(stu1.__dict__)
标签:11,__,name,gender,self,第一次,方法,age,周报
From: https://www.cnblogs.com/clever-cat/p/16862773.html