zoukankan      html  css  js  c++  java
  • 关于面向对象的属性访问

    ```
    class Car:
    car_address = '河南省郑州市' #类属性

    def __init__(self,color):
    self.color = color #实例属性

    #实例方法 只能用实例对象访问
    def move(self):
    print('move....')

    #类方法,可以使用类对象和实例对象调用
    @classmethod
    def start(cls):
    print('类方法start....')

    #静态方法,可以用类对象和实例对象调用
    @staticmethod
    def stop():
    print('静态方法stop...')
    ```
    类属性在类里面,父级就是类本身,可以被类和实例对象调用,实例对象可以对类属性进行重写,但不会影响类属性本身,类调用时一样可以使用原属性,类可以修改类属性,修改之后实例对象调用的就是修改以后的值

    实例方法是类下面默认的函数类型 ,其中__init__函数下面的变量都是实例属性,实例属性和实例方法只能被类进行调用

    类方法需要用@classmethod修饰,可以被类,实例对象调用

    静态属性需要用@staticmethod修饰,可以被类和实例对象调用,但都不能对其进行修改


    ```
    class A:
    str0 = 'hi,'

    def __init__(self):
    self.__str1 = 'hello'
    self._str2 = 'world'

    def f1(self):
    print(self.__str1)


    mc = A()

    print(mc.str0)
    print(mc._A__str1)
    print(mc._str2)
    ```
    以上是关于类属性,共享属性,私有属性的访问测试,值得注意的是,双下划线的str1属性访问时有两种方式(1、在类的内部写一个方法,调用方法访问;2、即上面的方法)

  • 相关阅读:
    使用CSS3美化复选框checkbox
    MYSQL select时锁定记录问题
    SQL Server中的锁
    T-SQL查询进阶—理解SQL Server中的锁
    SQL:查找被锁的表,以及锁表的SQL语句(重点推荐)
    Mac 常用的手势
    Mac 常用的快捷键
    Mac上的学习神器:Marginnote
    Mac 常用命令介绍
    Mac 上的传奇效率神器 Alfred 3
  • 原文地址:https://www.cnblogs.com/Zhao01/p/10082840.html
Copyright © 2011-2022 走看看