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代表实例对象)

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

  • 相关阅读:
    安装一些好用的工具
    转:通过快键强制关闭 Ubuntu 上无响应的程序
    同步cm10.1源码时出现的一些错误的解决办法。
    repo sync的介绍翻译
    配置grub解决ubuntu12.04不能保存亮度和调节的问题
    给fcitx加上云拼音库
    自己安装配置ubuntu12.04过程(内容丰富)
    关于repo sync -j*的含义的猜测
    同步cm10.1的时候发生同步错误不能找到github上的文件
    Element-ui tree组件自定义节点使用方法
  • 原文地址:https://www.cnblogs.com/kelly11/p/13503496.html
Copyright © 2011-2022 走看看