面向对象-------------------------对象和类的属性

class A:

company_name = '老男孩教育' # 静态变量(静态字段)

__iphone = '1353333xxxx' # 私有静态变量(私有静态字段)

def init(self,name,siyoushux): #特殊方法

self.name = name #对象属性(普通字段)

self.__siyoushux = siyoushux # 私有对象属性(私有普通字段)

def func1(self): # 普通方法

print('普通方法')

def __func(self): #私有方法

print('类的私有方法')

@classmethod # 类方法

def class_func(cls):

""" 定义类方法,至少有一个cls参数 """

print('类方法')

@staticmethod #静态方法

def static_func():

""" 定义静态方法 ,无默认参数"""

print('静态方法')

@property # 属性

def property_func(self):

return '1222'

# print('静态属性')

# 类外的调用:

# 对象的调用

a = A('小花',18)

print(a.name)

# print(a.__siyoushux)#对象的私有属性不能调用

a.func1()#普通方法可以调用

# a.__func()#私有方法不能调用

a.class_func()#类方法能调用

a.static_func()#能调用

a.property_func

# 类的调用

print(A.company_name)

# print(A.__iphone)#类的私有属性不能调用

A.func1(A)#普通方法可以调用但是要传一个参数

# A.__func()#私有方法不能调用

A.class_func()#类方法能调用

A.static_func()#能调用

print(A.property_func) # 这是一个 <property object at 0x0000023F8DD46908>

##############################################################################

class A:

company_name = '老男孩教育' # 静态变量(静态字段)

__iphone = '1353333xxxx' # 私有静态变量(私有静态字段)

def init(self,name,siyoushux): #特殊方法

self.name = name #对象属性(普通字段)

self.__siyoushux = siyoushux # 私有对象属性(私有普通字段)

def func1(self): # 普通方法

print('普通方法')

print(self.__iphone)

print(self.__siyoushux)

self.class_func() #可以

self.static_func()#可以

self.property_func#可以

print(A.__iphone)

# print(A.__siyoushux)#类不能调用对象的自有属性,无论是不是私有的

A.class_func() # 可以

A.static_func() # 可以

print(A.property_func) # 可以<property object at 0x000001FF477B6908>

def __func(self): #私有方法

print('类的私有方法')

@classmethod # 类方法

def class_func(cls):

""" 定义类方法,至少有一个cls参数 """

print('类方法')

@staticmethod #静态方法

def static_func():

""" 定义静态方法 ,无默认参数"""

print('静态方法')

@property # 属性

def property_func(self):

# return '1222'

print('静态属性')

b=A('大虎',22)

b.func1()

原文地址:https://www.cnblogs.com/wing3993/p/11392312.html