zoukankan      html  css  js  c++  java
  • 17:类对象、实例对象、类属性、实例属性、类方法、实例方法、静态方法

    本章内容:

    类与实例

    实例属性与静态属性

    实例方法与静态方法

    01:面向对象的语言VS面向对象的设计

    面向对象的设计:是一种设计思路

    面向对象的语言:提供对面向对象设计的语言支持

    非面向对象的语言也能实现面向对象的设计思路

    02:类与实例

    类-一类具有相同特征的食物的统称

    现实不存在-抽象的概念-人类-鸟类

    03:关键字 class 类名(通常首字母大写)

    class Tiger:

    classname=‘tiger’

    classname是一个属性

    04:实例

    在这个类里面实际存在的个体

    实例是类的具体实例化体现

    05:创建实例

    类名()

    class Person()

    #创建实例 类名()

    P1= Person()

    06:类--

    1-特征--属性--变量

    2-行为--方法--函数

    07:类属性--这个类所有的实例都是一样的--共有的

    name= ‘人类’

    静态(类)属性--可以实例.属性,类.属性

    实例属性-有些属性每一个实例不一样

    初始化方法--创建实例会自动调用

    def __init(self):
    print('我执行了')​

    08:对象的方法

    实例方法

    def eat(self):

    p1.eat()

    image.png

    image.png

    09:具体总结概念:

    类对象、类属性、实例对象、实例属性

    类是一个特殊的对象即类对象

    描述类的属性成为类属性

    类属性在内存中只有一份,在_init_外部定义

    实例方法、类方法、静态方法的区别

    ①实例方法是由对象调用,至少一个self参数。self代表对象的引用

    ②类方法有类调用,至少一个cls参数,并且需要装饰器@classmethod装饰

    ③静态方法由类调用,不需要参数,需要装饰器@staticmethod装饰

    创建原则:

    ①只要访问了成员变量的方法都叫实例方法

    ②只要访问类变量的方法叫类方法

    ③既不访问成员变量,也不访问类变量的方法叫静态方法

    image.png

    静态方法:@staticmethod

    不能访问实例属性,,参数不能传入self

    与类相关但不是不依赖类与实例的方法

    类方法:@classmethod

    不能访问实例属性,参数必须传入cls

    必须传入cls参数(即代表了此类对象--区别--self代表实例对象)

    静态方法和类方法都可以通过类或者实例来调用。其两个的特点都不能够调用实例属性

  • 相关阅读:
    实现JavaScript自定义函数的整合、链式调用及类的封装
    jQuery事件
    jQuery特效
    jQuery基础细节
    CSS3盒模型
    主流清浮动方法
    JavaScript 执行环境及作用域
    JavaScript 参数传递与变量复制
    PHP雪花背景验证码
    Linkis 0.9.2 版本发布
  • 原文地址:https://www.cnblogs.com/kelly11/p/13503496.html
Copyright © 2011-2022 走看看