[TOC]
# 面向对象-属性-类方法,静态方法
## 一 属性:
`属性`:将一个方法伪装成一个属性,在代码的级别上没有本质的提升,但让其看起来更合理
property:是一种特殊的属性,访问它时会执行一段功能(函数)然后返回值
property一般用于类似于bmi,area,周长等需要计算的名词上
```python
class Person:
def __init__(self,name,hight,weight):
self.name = name
self.__hight = hight #私有化
self.__weight = weight
def bmi(self):
return "%s 的bmi 值%s"% (self.name, self.__weight / self.__hight ** 2)
p1 = Person('张三',1.7,60)
print(p1.bmi())
#结果:张三 的bmi 值20.761245674740486
```
### 继承中父类得到子类的空间 可以做任何操作
```python
class A:
age = 12
@classmethod
def func(cls):
cls.age = 30
print(cls.age)
class B(A):
age = 15
B.func()
print(A.__dict__) # '__main__', 'age': 12
print(B.__dict__) # '__main__', 'age': 30
``````