16、人工智能Python基础之面向对象_静态方法、类方法、实例方法、构造方法_笔记
# 静态方法:通过装饰器staticmethod修饰 不需要传递实例
# 静态方法只能访问类属性 不能访问实例属性
# 如何调用静态方法:1、实例对象.静态方法 2、类名.静态方法
# 类方法:通过装饰器classmethod修饰 需要传递一个cls类 cls也不是关键词
# 类方法也不能调用实例属性 也是只能调用类属性
# 如何调用类方法:1、实例对象.类方法 2、类名.类方法
# -*- coding: utf-8 -*-
__author__ = 'dongfangyao'
__date__ = '2018/1/15 下午4:55'
__product__ = 'PyCharm'
__filename__ = 'oo3'
# 静态方法 类方法
# 1、每个方法里面能调用哪些属性
# 2、如何去调用静态方法或类方法
class People():
country = 'china'
def __init__(self, name, age):
self.name = name
self.age = age
def get_name(self):
print('我是实例方法----%s'%self.name)
@staticmethod
def ss():
print('我是静态方法-----%s'%People.country)
@classmethod
def cc(cls):
print('我是类方法------%s'%cls.country)
# p1 = People('dfy', 29)
# p1.get_name()
# People.get_name(p1)
# p1.ss()
# People.ss()
# p1.cc()
People.cc()
People.ss()