国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

C#操作符之IS與AS:安全的強制類型轉換

開發 后端
本文講解了C#操作符提供了IS與AS進行類型判斷與“安全”的強制類型轉換。

為了避免在進行強制類型轉換時由于目標類型無效,而導致運行時拋出InvalidCastException異常,C#操作符提供了IS與AS進行類型判斷與“安全”的強制類型轉換。

代碼如下: 

  1. class Program {  
  2.           
  3.         static void Main(string[] args)  
  4.         {  
  5.              Object studentObj = new Student();  
  6.  
  7.              Object studentProgram = new Program();  
  8.               
  9.             //使用IS去檢測studentObj引用的對象是否兼容于Student類型  
  10.             //IS永遠不會發生異常,當studentObj變量的引用為null時則永遠返回false;  
  11.             if (studentObj is Student)  
  12.             {  
  13.                  Student studentTemp = (Student)studentObj;  
  14.  
  15.              }  
  16.             if (studentProgram is Student)  
  17.             {  
  18.                  Console.WriteLine(studentProgram.ToString());  
  19.              }  
  20.  
  21.          }  
  22.      } 

由代碼可以看出,CLR實際會檢查兩次對象的類型,IS操作符首先檢測變量的引用是否兼容于指定的類型,如果返回TRUE,則CLR在進行強制類型轉換行進行第二次類型的檢測,即studentObj對象是否引用一個Student類型。

由于強制類型轉換CLR必須首先判斷變更引用對象的實際類型,然后CLR必須去遍歷繼承層次結構,用變量引用類型的每個基類型去核對目標類型。這肯定會對性能造成一定的影響。好在C#操作符提供了AS操作符來彌補這一缺陷。

代碼如下:

  1. class Program {  
  2.          
  3.        static void Main(string[] args)  
  4.       {  
  5.             Object studentObj = new Student();  
  6.  
  7.             Object studentProgram = new Program();  
  8.  
  9.           //CLR檢測studentObj引用對象類型兼容于Student,as將直接返回同一個對象的一個非null引用  
  10.            //即studentObj保存的對在托管堆上Student對象的引用  
  11.             Student s1 = studentObj as Student;  
  12.            //如果CLR檢測studentProgram引用對象類型不兼容目標類型,即不能進行強制類型轉換,則返回一個null,永遠不會拋出異常  
  13.             Student s2 = studentProgram as Student;  
  14.  
  15.            if (s1 != null)  
  16.            {  
  17.                 s1.Work();  
  18.             }  
  19.  
  20.            if (s2 != null)  
  21.            {  
  22.                 s2.Work();  
  23.             }  
  24.         }  
  25.     } 

由此可以看出,在對s1 s2變量進行應用時,還需要進行非null的判斷,從而避免出面NullReferenceException的異常。

顯然無論從性能還是代碼的的直觀上來說,C#操作符AS比IS更勝一籌,然而實際應用中,還是根據環境再做取決了。

C#操作符之IS與AS的內容就總結到這里。

【編輯推薦】

  1. WebBrowser控件的常用方法、屬性和事件
  2. C#動態生成Word文檔并填充數據
  3. C#動態調用Web服務的3種方法
  4. 服務器+客戶端的聊天程序
  5. C#類與對象的區別
責任編輯:book05 來源: hi.baidu
相關推薦

2009-08-19 17:20:22

C# 操作符

2024-05-07 08:55:46

C#軟件開發代碼執行時間

2009-08-24 14:20:13

C# 強制類型轉換

2009-08-19 17:26:28

C# 操作符

2009-08-18 18:06:54

C#操作符重載

2009-08-18 17:55:20

C#操作符重載

2009-08-19 17:33:35

C# 操作符

2009-08-21 09:30:05

is和as操作符

2009-08-19 17:13:15

C# 操作符基礎知識

2009-08-19 17:38:17

C# 操作符分類

2009-08-18 17:42:12

C#操作符重載

2009-08-19 16:59:25

C# 操作符

2009-08-18 17:34:25

C#操作符重載應用

2009-08-18 17:20:17

C#操作符重載

2024-05-13 00:00:00

C#操作符代碼

2010-01-28 11:16:28

C++操作符

2010-01-27 11:00:17

C++操作符

2011-06-17 16:42:23

C#

2010-01-21 09:53:23

C++操作符

2010-01-19 13:32:20

C++操作符
點贊
收藏

51CTO技術棧公眾號

国外成人免费在线播放| 91青草视频久久| 狠狠干夜夜操| 免费人成在线不卡| 77777亚洲午夜久久多人| xxxx成人| 日韩欧美成人区| 久久久久国产精品熟女影院| 老司机一区二区三区| 国产精品视频免费在线| 高清久久一区| 亚洲精品网站在线播放gif| 日韩在线免费看| 国产精品嫩草影院av蜜臀| 五月天在线免费视频| 蜜桃伊人久久| 国产一区免费| 精品久久成人| 国模吧一区二区| 日韩国产91| 亚洲精品一区二区久| av网址在线| 欧美亚洲综合网| 天海翼一区二区三区免费| 亚洲欧美另类小说视频| 5月婷婷6月丁香| 国产ts人妖一区二区| 五码日韩精品一区二区三区视频| 日韩久久综合| 青青草国产精品一区二区| 麻豆国产一区| 美女扒开尿口让男人操亚洲视频网站| 18aaaa精品欧美大片h| 欧美一区二区三区人| av在线电影播放| 色综合久久99| 福利在线播放| 欧美性受极品xxxx喷水| 三级国产在线观看| 色偷偷久久人人79超碰人人澡| 台湾十八成人网| 欧美日韩在线一区| 成人福利视频导航| 国产精品电影一区二区三区| 欧在线一二三四区| 五月激情综合色| 免费观看亚洲天堂| 欧美伦理一区二区| 欧美精品日本| 欧美床上激情在线观看| heyzo高清中文字幕在线| 中文字幕欧美国内| 精品中文字幕一区二区三区| 欧美精品在线观看| 欧美手机在线| 欧美亚洲精品日韩| 不卡视频免费播放| 2222www色视频在线观看| 欧美日韩中文精品| 成人在线免费视频观看| 国产3p露脸普通话对白| 午夜视黄欧洲亚洲| 成人爱爱网址| 欧美理论电影在线观看| 成人综合婷婷国产精品久久蜜臀 | 亚洲日产国产精品| 成人xxxxx色| 亚欧成人精品| 国产激情在线看| 国产午夜一区二区三区| 黄页网站在线观看| 在线成人小视频| 成人在线免费观看黄色| 热99在线视频| 久草这里只有精品视频| 中国成人亚色综合网站 | 成人免费视频国产在线观看| 久久婷婷五月综合色国产香蕉| 一区二区三区四区激情| 性开放的欧美大片| 欧美激情精品久久久久久久变态 | 国产一区二区三区直播精品电影| 国产成人澳门| 999久久欧美人妻一区二区| 欧美群妇大交群的观看方式| 国产精品xxx在线观看| 久久久亚洲精品无码| 亚洲电影免费观看高清| 欧美片第1页综合| 天堂中文字幕在线| 国产成人精品av在线| 亚洲摸摸操操av| 一区二区三区高清在线观看| 精品嫩模一区二区三区| 亚洲视频在线观看视频| 精品一区二区三区在线观看国产| 国产日产一区二区三区| 国内精品视频免费| 亚洲精品按摩视频| 国产乱码精品1区2区3区| 美女精品导航| 亚洲一区二区在| 日韩av中文字幕在线| 丝袜国产日韩另类美女| 日韩精品分区| 91精品91久久久中77777老牛| 欧美另类暴力丝袜| 亚洲欧美欧美一区二区三区| 欧美超碰在线| 国内外激情在线| 岛国大片在线播放| 永久免费毛片在线播放| 国产一区二区在线视频你懂的| 国产精品综合| 在线视频观看你懂的| www.国产91| 日韩精品一区二区三区色偷偷| 欧美日韩一区二区三区四区| 欧美国产欧美综合| 国产调教精品| 初尝黑人巨炮波多野结衣电影| 国产三级日本三级在线播放| 亚洲第一精品电影| 97dyy97影院理论片在线| 欧美日韩一区国产| 四虎视频在线精品免费网址| 91日本在线观看| 久久你懂得1024| 国产三级电影在线播放| 国产精品国产精品国产专区蜜臀ah| 久久久久成人黄色影片| 7777kkk亚洲综合欧美网站| 亚洲精品免费一区二区三区| 国产精品美女一区二区三区| 91九色国产在线播放| 亚洲综合精品伊人久久| 国产精品第一页第二页第三页| 欧美成人ⅴideosxxxxx| 麻豆av一区二区三区| 婷婷综合久久一区二区三区| 国产精品15p| 久久精品国产sm调教网站演员| 91精品国产综合久久久久 | 欧美一区二区视频在线观看| 一本色道久久综合亚洲精品高清 | 国产日韩视频一区二区三区| 九色中文视频| 亚洲天堂av女优| 国产精品黄色| av一卡二卡| 国产成人精品免高潮在线观看| 亚洲成va人在线观看| 免费福利片在线观看| 中文字幕亚洲自拍| 久久99国产精品久久99果冻传媒| 在线观看完整版免费| 国产精品一区二区三区精品| 亚洲成人精品一区二区| 国产麻豆精品久久| 日本视频二区| 国产在线精品成人一区二区三区| 亚洲综合在线五月| 色婷婷亚洲mv天堂mv在影片| 中文在线网在线中文| 成人a在线观看| 色综合天天综合给合国产| 欧美 日韩 国产 一区| 国产精品秘入口| 蜜桃av噜噜一区二区三| 精品999在线播放| 久久国产日韩欧美精品| av免费在线视| 黄色免费高清视频| 在线播放日韩专区| 97久久精品人人做人人爽50路| 中文字幕日本一区| 国产精品一区二区小说| 国产精品美女网站| 欧美在线视频日韩| 日本欧美一区二区三区乱码| 搜成人激情视频| 日本www.色| 国产日韩在线观看av| 欧美视频在线一区二区三区| 日韩国产欧美三级| 黄色精品视频| 德国一级在线视频| 国产乱子伦精品| 日韩精品视频免费在线观看| 97精品国产露脸对白| 偷拍自拍一区| 在线观看免费版| 黄色免费高清视频| 高清一区二区三区日本久| 性久久久久久久久| 美女脱光内衣内裤视频久久网站 | 国产一区二区三区电影在线观看| 午夜精彩视频| 久久久久久久有限公司| 在线日韩日本国产亚洲|