python 类的创建、初始化方法、实例方法

类的创建语法:

  class 类名(继承列表)

          """类文档字符串"""

  类的作用:

         可以用类创建一个或多个此类的对象(实例)

         类内的变量和方法能被此类所创建的所有实例所共同拥有

  说明:

        类名必须是标识符(与变量名命名规则相同,建议首字母大写)

        类名实质上就是变量,它绑定一个类实例

        类的定义最后面要加上两个空格以告诉解释执行器,类的定义已经结束

构造函数:

       构造函数的调用表达式

       类名([创建传参列表])     []里的内容代表可省略

 作用:

       创建这个类别的实例对象,并返回此实例对象的引用关系

  示例:

        class Dog:  #定义一个类

     pass

       dog1 = Dog()  #用类来创建一个对象用dog1绑定

       print(id(dog1))  #打印dog1所在的内存地址

       dog2 = Dog()   #创建第二个对象 用dog2绑定  

       print(id(dog2)) 

       print(dog1 is dog2)   #判断两只狗是不是同一只狗

  实例说明:

       实例有自己的作用域或名字空间,可以为该实例添加实例变量(也叫属性)

       实例可以调用类的方法

       实例可以访问类中的类变量

实例变量(属性 attribute)

       每个实例可以有自己的变量,成为实例变量(属性)

  属性的使用语法:

       实例.属性名

  属性的赋值规则:(同变量规则相同)

        1、首次为属性赋值则创建此属性

       2、再次为属性赋值则改变属性的绑定关系

示例:

      class Dog:

          pass

      dog1 = Dog()

     dog1.kinds = "京巴" #为dog1绑定的实例添加kinds属性

     dog1.color = "白色"  #添加属性

     print(dog1.kinds,dog1.color) #访问属性

     dog1.color = '黄色'  #修改dog1.color的绑定关系

     print(dog1.color)

实例方法 method

  语法:

    class 类名(继承列表):

        def 实例方法名(self,参数1,参数2,...):

            语句块

  作用:

    用于描述一个对象的行为,让此类型的全部对象拥有相同的行为

  说明:

    实例方法的实质是函数,是定义在类内的函数

    实例方法的第一个参数代表调用这个方法的实例,一般会命名为'self'

实例方法的调用语法:

  实例.实例方法名(调用参数)

  或

  类名.实例方法名(实例,调用参数)

示例:

1、

# instance_method.py

#此示例示意实例方法的定义方式和调用方法

class Dog():

    """这是一个类,用来描述一个小动物的行为"""

      def eat(self,food):

        """小狗能够有吃东西的行为"""

             print("小狗吃了",food)

      def sleep(self,hour):

          print("小狗睡了",hour,"小时")

     dog1 = Dog()   #创建一个示例对象

     dog1.eat("骨头")   #让狗吃东西

    dog1.sleep(1)    #让够睡觉

    dog2 = Dog()   #创建一个示例对象

    dog2.eat("包子")   #让狗吃东西

   dog2.sleep(2) 

   dog3 = Dog()   #创建一个示例对象

   Dog.eat(dog3,"狗粮")   #让狗吃东西

   Dog.sleep(dog2,3) 

初始化方法

  作用:

    对新创建的对象添加属性等必须的资源

  语法形式:

    class 类名:

        def __init__(self[,参数列表]):

            语句块

        [] 代表其中内容可省略

  说明:

    初始化方法必须为__init__不可改变

    初始化方法会在构造函数创建实例后自动调用,且将实例吱声通过第一个参数self传入__init__方法

    构造函数的实参将通过__init__方法的参数列表传到__init__方法中

    初始化方法内如果需要return语句返回,则必须返回None

猜你喜欢

转载自blog.csdn.net/qq_31835117/article/details/80101783