# encoding:utf-8
__author__ = 'mr******'
# 含有類的靜態方法、靜態變數, 普通類成員函式, 成員變數
class people:
count = 0
sum = 0
def __init__(self, name, age, gend):
self.name = name
self.age = age
self.gender = gend
people.peoplecount() # 人數計數
people.agesum(age) # 歲數計數
def tostring(self):
print "name : %s, age : %d, gender : %s." % (self.name,self.age, self.gender)
# 靜態函式
@staticmethod
def sayhi(fname):
print "hi," + fname
# 間接實現靜態成員變數
@classmethod
def peoplecount(cls):
cls.count += 1
return cls.count
# 間接實現靜態成員變數, 有引數
@classmethod
def agesum(cls, age):
cls.sum += age
return cls.sum
ple = people("mr.******", 22, "male")
ple.tostring()
people.sayhi("frank")
print ple.name
print people.peoplecount()
print people.agesum(10)
使用@staticmethod標籤來表明函式為類的靜態函式,且sayhi的引數中沒有self。而類的靜態變數借助@classmethod來實現,其中peoplecount中為無參靜態函式,而agesum中有乙個age引數。 如圖
時間類 靜態函式
corpyright c 2013,煙台大學計算機學院 all right reseved.完成日期 2014年4月1日 版本號 v1.0 輸入描述 問題描述 時間類!程式輸出 問題分析 演算法設計 include using namespace std class time void show t...
C 類中的靜態成員與靜態函式
c 類中的靜態成員有乙個非常好的功能,那就是無論類定義了多少個物件,這些物件始終都共同使用這乙個靜態成員 例如 class a int a num 0 就會有如下效果 a a,b,c,d cout 可以看出,在每個物件中的num成員都只有乙個副本。在記憶體中也是如此,初始化abcd時並沒有分配新的記...
C 類中的靜態成員與靜態函式
c 類中的靜態成員有乙個非常好的功能,那就是無論類定義了多少個物件,這些物件始終都共同使用這乙個靜態成員 例如 class a int a num 0 就會有如下效果 a a,b,c,d cout 可以看出,在每個物件中的num成員都只有乙個副本。在記憶體中也是如此,初始化abcd時並沒有分配新的記...