日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
概述C#New運(yùn)算符

前段時(shí)間一個(gè)朋友問到C#的New關(guān)鍵字有幾種用法,雖說在日常編程中經(jīng)常用到這個(gè)小家伙,但它到底有幾種用法還真沒有留意過,現(xiàn)將從網(wǎng)上總結(jié)出的資料記下以供同仁學(xué)習(xí)。
(1)C# New運(yùn)算符 用于創(chuàng)建對(duì)象和調(diào)用構(gòu)造函數(shù)。
(2)New 修飾符 用于隱藏基類成員的繼承成員。
(3)New 約束 用于在泛型聲明中約束可能用作類型參數(shù)的參數(shù)的類型。

站在用戶的角度思考問題,與客戶深入溝通,找到宿州網(wǎng)站設(shè)計(jì)與宿州網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站、成都外貿(mào)網(wǎng)站建設(shè)公司、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、空間域名、雅安服務(wù)器托管、企業(yè)郵箱。業(yè)務(wù)覆蓋宿州地區(qū)。

C# New運(yùn)算符

1.用于創(chuàng)建對(duì)象和調(diào)用構(gòu)造函數(shù)

例:Class_Test MyClass = New Class_Test();

2.也用于為值類型調(diào)用默認(rèn)的構(gòu)造函數(shù)

例:int myInt = New int();

myInt 初始化為 0,它是 int 類型的默認(rèn)值。該語句的效果等同于:int myInt = 0;

3.不能重載C# New運(yùn)算符。

4.如果C# New運(yùn)算符分配內(nèi)存失敗,則它將引發(fā) OutOfMemoryException 異常。

New 修飾符

使用 New 修飾符顯式隱藏從基類繼承的成員。若要隱藏繼承的成員,請(qǐng)使用相同名稱在派生類中聲明該成員,并用 New 修飾符修飾它。

請(qǐng)看下面的類:

 
 
 
  1. public class MyClass
  2. {
  3. public int x;
  4. public void Invoke() {}
  5. }

在派生類中用 Invoke 名稱聲明成員會(huì)隱藏基類中的 Invoke 方法,即:

 
 
 
  1. public class MyDerivedC : MyClass
  2. {
  3. new public void Invoke() {}
  4. }

但是,因?yàn)樽侄?x 不是通過類似名隱藏的,所以不會(huì)影響該字段。

通過繼承隱藏名稱采用下列形式之一:
1.引入類或結(jié)構(gòu)中的常數(shù)、指定、屬性或類型隱藏具有相同名稱的所有基類成員。
2.引入類或結(jié)構(gòu)中的方法隱藏基類中具有相同名稱的屬性、字段和類型。同時(shí)也隱藏具有相同簽名的所有基類方法。
3.引入類或結(jié)構(gòu)中的索引器將隱藏具有相同名稱的所有基類索引器。
4.在同一成員上同時(shí)使用 New 和 override 是錯(cuò)誤的。

注意:在不隱藏繼承成員的聲明中使用 New 修飾符將生成警告。

示例

在該例中,嵌套類 MyClass 隱藏了基類中具有相同名稱的類。該例不僅說明了如何使用完全限定名訪問隱藏類成員,同時(shí)也說明了如何使用New修飾符消除警告消息。

 
 
 
  1. using System;
  2. public class MyBaseC{
  3. public class MyClass{
  4. public int x = 200;
  5. public int y;
  6. }
  7. }
  8. public class MyDerivedC : MyBaseC{
  9. new public class MyClass // nested type hiding the base type members{
  10. public int x = 100;
  11. public int y;
  12. public int z;
  13. }
  14. public static void Main(){
  15. // Creating object from the overlapping class:
  16. MyClass S1 = new MyClass();
  17. // Creating object from the hidden class:
  18. MyBaseC.MyClass S2 = new MyBaseC.MyClass();
  19. Console.WriteLine(S1.x);
  20. Console.WriteLine(S2.x);
  21. }
  22. }

文章標(biāo)題:概述C#New運(yùn)算符
網(wǎng)站鏈接:http://m.5511xx.com/article/djppdho.html