老子云,道生一,一生二,二生三,三生萬物。夫世間種種,皆可謂物也。物有千端也,皆分以種類,蓋《易經》有云:方以類聚,物以群分。今蚺之類,數言爻列辨空值也,其不足表者,則以物成類,其物亦蚺之類也。譬如犬有名,言也。犬有年歲,數也。犬有雌雄,陰陽也。合而成類曰「犬」也。
成類,曰物件導向,class
也。成類者,必先曉其類之律,蓋窮至事物之理也,格致之道也。今成類者,先命其名,後格其類而知其律也。其律有二,常定、不定也。常定者,窮其律而少變矣,譬如人常有五官也。不定者,窮其律而盡不同矣,譬如人雖有五官,其相盡不同也。二者皆得物事也。常定,蓋變數也。不定,蓋初始術也。初始術者,蚺術,曰def __init__():
也。其律盡不同者入其物也,其物變數也。欲入者,必依於參數也。參數,類之不同者之物事也,其名自定矣。初始術,其參數有別矣,參數之始,己身之名也,蓋變數之名矣,其類為成類者之名也。參數之始其後,物事之名也,欲予物於物事之名者,以己身之名點予物之名為物事之名也,蓋己身之名.予物之名 = 物事之名
也。注曰:予物者,變數也,予物之名,變數之名也,名自定矣。初始術入物相同乎蚺術入物也,然其己身之名無須矣。
今以人為例,其常定者有五官循五常也,不定者有歲男女族高重也,其歲二十,男也,其族漢也,其高八十寸,其重一百斤,其名曰「劉畛」也。書如是:
class 人:
五官 = '眼耳鼻口舌'
五常 = '仁義禮智信'
def __init__(名, 歲, 男, 女, 族, 高, 重):
名.歲 = 歲
名.男 = 男
名.女 = 女
名.族 = 族
名.高 = 高
名.重 = 重
劉畛 = 人(20,True,False,'漢',80,100)
print(type(劉畛))
print(劉畛.歲)
書其類乃得<class '__main__.人'>
,欲書其物事以己身之名點物事之名也,故書劉畛之歲曰print(劉畛.歲)
也,乃得20
,書其五官亦同print(劉畛.五官)
,乃得眼耳鼻口舌
也。易劉畛之歲至二十一,則曰劉畛.歲 = 21
也,亦可更常定者也。