分部類是某些面向對象編程語言中的一種功能,它允許在多個源代碼文件之間拆分類的實現。分部類也稱為分部類型,在許多編程語言中并不存在,尤其是像C和Java這樣的較老的語言。實現分部類的每種語言,如C#和Ruby,對實現的處理...
分部類是某些面向對象編程語言中的一種功能,它允許在多個源代碼文件之間拆分類的實現。分部類也稱為分部類型,在許多編程語言中并不存在,尤其是像C和Java這樣的較老的語言。實現分部類的每種語言,如C#和Ruby,對實現的處理方式稍有不同。分部類也被稱為分部類型,在許多編程語言中并不存在,尤其是像C這樣的較老的語言,分部類使用“partial”關鍵字來表示類片段,關鍵字是否大寫取決于所使用的編程語言。類的每個片段都以相同的方式初始化,使用相同的類聲明,而不使用這些“partial”關鍵字,在多個同名文件中創建多個類是非法的。“partial”關鍵字告訴編譯器或解釋器,根據語言的不同,將所有類合并到一個大單元中。類的所有不同部分必須具有相同的可見性,無論是public、private還是protected類被指定為抽象類,合并后的類也被指定為抽象類,即使沒有其他單獨的部分被指定為這樣,在多個文件中實現分部類在編程風格和組織上都有一些顯著的優勢。分部類允許將相關的代碼片段顯式地分離到更專門的組中。此外,分部類允許多個程序員處理代碼的特定部分,而不會潛在地中斷其他部分和意外地覆蓋修訂即使是單身程序員,分部類可以用于創建非常大的類,而不必創建一個難以組織和讀取的單一笨拙文件。分部類實現模式也有一些明顯的缺點。盡管部分類屬于面向對象編程的保護傘下,但實際上違反了面向對象編程的核心封裝原則。在面向對象編程中,類應該是一個單一的統一實體,它有自己獨特的狀態和行為,是自包含的,并且可以作為一個內聚單元使用。分部類違反了這一思想,因為每個分部類的作用就像一個單獨的類。盡管組成分部類的部分在運行時被合并成一個大類,部分類的片段通常是獨立的實體,它們可以單獨使用,而不需要任何形式的合并
-
發表于 2020-08-06 05:09
- 閱讀 ( 937 )
- 分類:電腦網絡