首页 > 其他分享 >11.6总结

11.6总结

时间:2022-11-06 14:11:59浏览次数:56  
标签:总结 __ name 对象 11.6 init 方法 self

内容回顾

  • 面向对象之类与对象
  • 对象独有的数据功能(属性,方法)
  • 编程思想
  • 动静态方法
  • 继承的概念/本质
  • 名字查找顺序
  • 经典类与新式类
  • 派生方法

1.类与对象

面向对象编程的主题是围绕着 数据与功能的结合体
# 对象>>>>数据与功能的结合体
# 类>>>>>有相同功能与属性的对象的结合体
类的主要作用是为了节省代码
类与对象的创建语法:
类的创建:
class 类名:
    '''类体注释'''
    对象公共的数据
    对象公共的功能
    	类体代码
对象的创建:
变量名 = 类名()  

2.对象独有的数据功能(属性,方法)

对象独有数据属性可以在类中调用 def __init__():
    在__init__方法内传值即可
我们在创建对象的时候在类加括号中传递 init 所需的参数
并通过self.变量名 = 形参 传值
即可给对象添加他的属性

独有方法即,对象调用了类中的公共方法,
谁调用的那么这个方法就是谁独有的
调用方法都会把对象本身传递进去(seLf)

3.编程思想

1.面向过程编程:
	过程即流程,我们对问题进行解析分析每一步需要做什么,一步一步去完成目标,每一步都有固定的流程,
    每一次都离最终结果更进一步
2.面向对象编程:
	面对对象编程就好像我们成为了造物主,我们只负责创造对象,对象之后怎么样不是我们考虑的范畴

4.动静态方法

1.
动态方法就是可以动态传值,
我们通过对象掉类中的公共方法的时候,会自动将对象本身当作第一个参数传递进去

我们在公共方法上面加上 @classmethod 这个装饰器
那么我们在使用类名调用公共方法的时候,也会默认把类本身当作第一个参数传递进去
2.
静态方法就好像在类中建立一个独立的函数,他不会被传值
我们只需要在 公共方法上面加上 @staticmethod 这个装饰器
我们在调用的时候 不管是类还是对象去调用都不会自动传参数

5.继承的本质与概念

1.继承的本质就是节省代码
继承就相当于儿子继承了父亲的财产
父亲有多少钱
儿子就能继承多少钱
并且父亲有的物件
儿子也能用

6.名字的查找顺序

对象本身>>>>产生对象的类>>>>> 类的父类>>>>>object
菱形继承: 广度优先 ,最后找顶点
非菱形继承: 深度优先 一直找到底

7.经典类与新式类

在python2 中 有经典类的概念 
class 类名(object)
经典类就是不继承object的类或着继承其子类的类
新式类就是继承了object的类或着继承了其子类的类

8.派生方法

派生方法就是子类基于父类某个方法做了扩展
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__)

标签:总结,__,name,对象,11.6,init,方法,self
From: https://www.cnblogs.com/ddsuifeng/p/16862523.html

相关文章