成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

C#局部類型介紹

開發 后端
這里介紹C#局部類型,包括C#局部類型的引入、C#局部類型簡介、C#局部類型的一些限制、C#局部類型的幾個特點等幾個方面。

C#局部類型的引入

沒有局部類型的時候(C# 1.0)

  1. class App  
  2. {  
  3.    public void Foo(){...}  
  4.    ...  
  5.    public void Bar(){...}  
  6.    ...  


有了局部類型之后(C# 2.0)

  1. partial class App  
  2. {  
  3.    public void Foo()  
  4.    {...}  
  5.    ...  
  6. }  
  7. partial class App  
  8. {  
  9.    public void Bar()  
  10.    {...}  
  11.    ...  


C#局部類型簡介

局部類型允許我們將一個類型(類、結構或者接口)分成幾個部分,分別實現在幾個不同的.cs文件中。

C#局部類型適用于以下情況:
◆類型特別大,不宜放在一個文件中實現;
◆一個類型中一部分代碼為自動化工具生成的代碼,不宜與我們自己編寫的代碼混合在一起。
局部類型是一個純語言層的編譯處理,不影響任何執行機制 - 事實上C#編譯器在編譯的時候仍會將各個部分的局部類型可并成一個完整的類。

C#局部類型的一些限制

局部類型只適用于類、結構、或接口,不支持委托或枚舉。同一個類型的各個部分必須都有修飾符partial。使用局部類型時,一個類型的各個部分必須位于相同的名稱空間中。一個類型的各個部分必須被同時編譯。換言之,C#不支持先編譯一個類型的某些部分,然后再編譯一個類型的某些部分。

C#局部類型的幾個特點

關鍵字partial是一個上下文關鍵字,只有和class、struct、interface放在一起時才有關鍵字的含義。因此partial的引入不會影響現有代碼中名稱為partial的變量。局部類型的個數并不必須為2個或2個以上,也可以為1個,雖然這時候已經沒有“局部”的必要。局部類型的各個部分一般是分開放在幾個不同的.cs文件中,但C#編譯器允許我們將它們放在同一個.cs文件中。

在C#局部類型上應用特性

  1. [Attr1,Attr2("hello")]  
  2. partial class A{}  
  3.  
  4. [Attr3,Attr2("goodbye")]  
  5. partial class A{}  
  6.  
  7. //相當于在A類上應用了如下特性:  
  8. [Attr1,Attr2("hello"),Attr3,Attr2("goodbye")]  
  9. partial class A{} 

C#局部類型上的修飾符

一個類型的各個部分上的訪問保護修飾符必須維持一致性。如果一個類型有一個部分使用了abstract修飾符,那么整個類將被視為抽象類。如果一個類型有一個部分使用了sealed修飾符號, 那么整個類將被視為密封類。一個類的各個部分不能使用相互矛盾的修飾符,比如不能在一個部分上使用abstract,又在另一個部分上使用sealed。

C#局部類型的基類或接口

一個類型的各個部分上指定的基類必須一致。某些部分可以不指定基類,但如果指定,則必須相同。

  1. partial class C:IA,IB{...}  
  2. partial class C:IC{...}  
  3. partial class C:IA,IB{...} 

【編輯推薦】

  1. C#特有線程功能
  2. 淺談C#對象和集合
  3. 淺析C# FTP WebRequest對象
  4. C#分部方法的應用場景
  5. 概述C#線程功能
責任編輯:佚名 來源: 博客園
相關推薦

2010-01-28 15:22:12

C++嵌套類

2009-08-03 17:51:43

C#引用類型

2009-08-14 17:04:50

C#類型系統

2009-08-27 10:19:22

C#匿名類型

2009-08-27 10:08:36

C#隱含類型局部變量

2009-08-03 14:54:23

值類型C#

2009-09-07 10:48:53

C#數據類型

2009-09-04 10:16:30

C#數據類型

2011-06-08 13:35:18

C#數據類型

2009-08-26 18:00:07

C#內部類

2009-09-11 12:00:33

C#預定義數據類型

2009-08-26 15:39:08

C#隱式類型局部變量

2009-08-12 18:35:36

C# ArrayLis

2009-10-22 18:41:49

CLR VIA C#教

2009-08-26 16:37:07

C#迭代器局部變量

2009-08-10 17:25:58

C#匿名類型

2009-08-25 10:24:29

C# delegate

2009-09-02 17:20:50

C# Parsing

2009-08-17 16:47:51

C# Anonymou

2009-08-10 16:30:56

C# BitmapDa
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 激情六月丁香婷婷 | 天天综合永久 | 成人在线一区二区 | 九九伊人sl水蜜桃色推荐 | 国产一级一级毛片 | 国产一级视频在线 | 91在线电影| 欧美日韩国产高清视频 | 国产成人精品一区二区 | 欧美色综合 | 色男人天堂av | 久久一区二区三区免费 | 国产精品一区二区视频 | 精品一区av | 一区二区三区中文字幕 | 九九导航 | 福利网站导航 | 国产高清视频 | 性欧美精品一区二区三区在线播放 | 伊人爽 | 中文字幕视频在线观看免费 | 亚洲成人免费网址 | 久久久久亚洲 | 91精品国产91久久综合桃花 | 黄色片大全在线观看 | 91麻豆产精品久久久久久夏晴子 | 一级毛片视频在线 | 亚洲欧美久久 | 日本超碰 | 奇米影视77 | 天天躁日日躁性色aⅴ电影 免费在线观看成年人视频 国产欧美精品 | 中文字幕欧美一区二区 | a毛片 | 99精品一区二区 | 午夜精品久久久久久久久久久久久 | 国产综合av | 久草精品视频 | 成人精品一区二区三区中文字幕 | 精品久久久久久18免费网站 | 国产精品久久久久久福利一牛影视 | 综合久久综合久久 |