#面向对象基础 class Cfx: #使用class定义一个类:长方形 def __init__(self,chang,kuan): #初始化方法,所有的类都应该有这个方法.self表示实例本身 self.length=chang #表示初始化方法的属性 self.width=kuan def zhouchang(self): return (self.width+self.length)*2 def mianji(self): return (self.length*self.width)*0.5 shili=Cfx(1,2) #实例化一个对象shili,并传值 print(shili.zhouchang()) print(shili.mianji()) #写一个三角形的类,有初始化方法,周长方法,面积方法 # class sanjiaoxing: # def __init__(self,height,low): # self.height=height # self.low=low # def zhouchang1(self): # return ()
类方法
class Person:
@classmethod
def leifangfa(cls,a):
print("这是类方法",cls,a)
Person.leifangfa(123) #通过类调用
p=Person #通过实例调用,只不过实例被忽略
p.leifangfa(666)
func=Person.leifangfa(8888)
print(func)
#装饰器的作用:在保证原本函数不改变的前提下,直接给这个函数增加一些功能
静态方法
class Person:
@staticmethod
def jingtai():
print("这是静态方法")
Person.jingtai() #通过类调用
p=Person()
p.jingtai() #通过实例调用
func=Person.jingtai #间接调用
func()
方法相关的补充