zoukankan      html  css  js  c++  java
  • day23

    今日所学:

         一:类属性与对象属性

                类中应该仅存储所有对象共有的内容,如所有人的国籍相同就放到类中

        对象中存储每个对象独有的内容,如每个人的名字都不同

         二:init方法的作用

               init 是对初始化的缩写,用于对象的属性设置初始值特点:

                   1,执行时机:当实例化产生对象时会自动执行该函数

         2,会自动传入需要初始化的对象

         3,初始化必须包含至少一个参数 用于表示对象本身

         4,该函数不允许有返回值,必须为None

      三:绑定方法

                      方法就是函数,那就是说绑定方法 ==绑定函数

                      默认情况下 在类中定义的方法 都是绑定方法

          绑定方法是把函数和对象绑定到一起

    绑定方法与普通函数的区别

    个类中可以有属性和方法

    方法分为两种

    1.绑定方法

    ​ 1.1对象绑定方法

    ​ 在使用对象调用时会自动传入对象本身

    ​ 1.2类绑定方法

    ​ @classmethod

    ​ 在使用对象调用时会自动传入类本身

    ​ 在使用类来调用时也会自动传入类本身

    ​ 单例模式中就会经常使用@classmethod

     

    到底绑定给谁?

    当你的方法执行过程中需要使用到对象中数据时就绑定给对象

    当你的方法执行过程中需要使用到类中数据时就绑定给类

     

    2.非绑定方法

    即不需要对象中的数据 也不需要类中的数据  那就定义为非绑定方法,就是普通函数

    @staticmethod

    oop知识点:

    1.属性应该放在类中还是对象中

    2.绑定方法  == 绑定函数

    对象绑定方法

    ​ 对象调用时 自动传入对象本身

    ​ 类调用时不会自动传参 有几个就需要传几个

    类绑定方法

    ​ @classmethod

    ​ 无论是对象还是类调用 都会自动传入类本身

    非绑定方法(静态方法)

    ​ @staticmethod

    ​ 谁调用都不会自动传参

    继承

    继承指的是一种关系,在生活中通过继承关系,例如王思聪继承王健林,对于王思聪可以,可以直接使用王健林已经拥有的

    被继承的一方(王健林) 称之为父   继承的一方(王思聪) 称之为子

    在OOP中 继承描述是类和类之间的关系  例如b类继承a类  b类可以直接使用a类中的属性和方法

    a是父类(基类,超类)  b是子类(派生类)

    好处:极大的提高了代码的复用性

     

    如何使用继承,至少需要两个类

    语法:

    class 子类名称(父类名称):

    ​ pass

    class Teacher:
       school = "oldboy"
       def __init__(self,name,age):
           self.name = name
           self.age = age

       def say_hi(self):
           print("hello i am %s" % self.name)
           
       def teach(self):
           print("正在教书......")

    class Student(Teacher):
       pass

    print(Student.school)
    print(Student.say_hi)
    print(Teacher.say_hi)

    s = Student("rose","123")
    s.say_hi()
    s.teach()

    在上述案例中通过继承 学生就拥有了老师的所有内容  但是学生不应该教书这个技能
    意味着这个继承关系 有问题 不合理
    需要先抽象 在继承
  • 相关阅读:
    Beans
    Redis记录-Redis命令
    Redis记录-Redis介绍
    RESTful记录-RESTful服务
    RESTful记录-RESTful内容
    RESTful记录-RESTful介绍
    HTTP记录-HTTP介绍
    Solr记录-solr检索和查询数据
    Solr记录-solr文档xml
    Solr记录-solr内核与索引
  • 原文地址:https://www.cnblogs.com/Fzhiyuan/p/10878609.html
Copyright © 2011-2022 走看看