<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    靈魂-放水

    為學(xué)日益,為道日損。

    BlogJava 首頁 新隨筆 聯(lián)系 聚合 管理
      296 Posts :: 10 Stories :: 274 Comments :: 0 Trackbacks

    1、? 命名空間是 C# 代碼的基本組織形式,類、結(jié)構(gòu)等各種類型定義都包含在命名空間中,而一個命名空間也可以嵌套在另一個命名空間之中,這就形成了一個邏輯上的層次體系結(jié)構(gòu)。一個程序集中可以包含多個命名空間,但每個命名空間只能屬于一個程序集。

    2、? C# 中,嚴(yán)格地說,字符類型( char )也是一種整數(shù)類型, C# 編譯器負(fù)責(zé)在規(guī)定范圍的整數(shù)和字符之間進(jìn)行轉(zhuǎn)換。由于采用了 Unicode 字符集, C# 中單個漢字也可以作為字符來使用,如 char a =’ ’;

    3、? 結(jié)構(gòu)是值類型,而類是引用類型;對于值類型,每個變量直接包含自身的所有數(shù)據(jù),每創(chuàng)建一個變量,就在內(nèi)存中開辟一塊區(qū)域;而對于引用類型,每個變量只存儲對目標(biāo)數(shù)據(jù)的引用,每創(chuàng)建一個變量,就增加一個指向目標(biāo)數(shù)據(jù)的指針。

    4、? 如果一個類同時繼承了接口和其他的類,定義時需要將基類寫在前面,接口寫在后面。接口定義中對方法的聲明,既不包括訪問限制修飾符,也不包括方法的執(zhí)行代碼。

    5、? 子類型到父類型進(jìn)行顯示轉(zhuǎn)換,父類型到子類型進(jìn)行隱式轉(zhuǎn)換。裝箱轉(zhuǎn)換:實(shí)現(xiàn)了從值類型到引用類型的隱式轉(zhuǎn)換,其中包括從任何值類型到 System.Object 類型的轉(zhuǎn)換,以及從某個值類型到它所實(shí)現(xiàn)的接口類型的轉(zhuǎn)換;拆箱轉(zhuǎn)換:實(shí)現(xiàn)了從引用類型到值類型的顯示轉(zhuǎn)換,其中包括從 System.Object 類型到任何值類型的轉(zhuǎn)換,以及從某個接口類型到繼承借口的某個值類型的轉(zhuǎn)換。編譯器對顯示轉(zhuǎn)換并不進(jìn)行檢查,一旦轉(zhuǎn)換失敗,程序就會中止并拋出一個 System.InvalidCastException 異常。

    6、? 要使一個方法能夠接受不同數(shù)量的參數(shù),就要用到數(shù)組型參數(shù)。數(shù)組型參數(shù)的使用有嚴(yán)格的規(guī)定:方法中只允許定義一個數(shù)組型參數(shù),而且該參數(shù)必須位于參數(shù)列表中的最后;數(shù)組型參數(shù)所定義的數(shù)組必須是一維數(shù)組;數(shù)組型參數(shù)不能同時既為引用型參數(shù)又為輸出型參數(shù)。傳遞給數(shù)組型參數(shù)的實(shí)參可以是一個數(shù)組變量,也可以是多個數(shù)組元素變量。前者采用引用傳遞(方法執(zhí)行代碼對形參的修改同時也改變了實(shí)參),而后者采用值傳遞的方式(方法執(zhí)行代碼對形參的修改不會影響到實(shí)參)。

    7、? C# 中的方法可以接受的參數(shù)類型共有 4 種:普通參數(shù);引用型參數(shù),以關(guān)鍵字 ref 定義,采用引用傳遞;輸出型參數(shù),以關(guān)鍵字 out 定義,采用引用傳遞,其實(shí)參可以不進(jìn)行初始化;數(shù)據(jù)型參數(shù),以關(guān)鍵字 params 定義,根據(jù)實(shí)參形式選擇引用傳遞或值傳遞,包含數(shù)量可變的參數(shù)。

    8、? 對于在命名空間下直接定義的類型(如類、結(jié)構(gòu)、接口、枚舉、代表等),不允許使用 private 修飾符。如果成員未加任何訪問限制修飾符,則默認(rèn)均為 private Protected 修飾符只能用于類的成員,而對結(jié)構(gòu)的成員以及在命名空間下直接定義的類型無效。 Public internal 可以作為程序集層次上的訪問限制修飾符, public 的訪問限制級別低于 internal ;而 public protected private 三者可以作為類型層次上的訪問限制修飾符,且限制程度由低到高。

    9、? 在類的繼承層次中,要求派生類的訪問限制級別不能低于基類的訪問限制級別。也就是說,如果某個基類的訪問限制修飾符為 internal ,那么它的所有派生類都不能使用 public 來作為修飾符。 C# 對于成員訪問限制的一個要求是:對方法參數(shù)類型的訪問限制級別不能高于對方法的訪問限制級別。比如: protected void SendMail(Address TargetAddress) ,而 Address 的訪問級別為 private ,使用了 Address 作為參數(shù),那么編譯時就會發(fā)生錯誤。

    10、????????????? 實(shí)例成員,屬于類型的實(shí)例所有;靜態(tài)成員,屬于類型本身所有。和實(shí)例成員不同,使用靜態(tài)成員時,圓點(diǎn)連接符的前面不再是某個具體的對象變量,而是類的名稱。對于實(shí)例字段,每創(chuàng)建一個類的實(shí)例,都在內(nèi)存中開辟了一塊區(qū)域用于存儲該字段;而類的靜態(tài)字段屬于類所有,為這個類的所有實(shí)例所共享,無論為這個類創(chuàng)建了多少個對象,一個靜態(tài)字段在內(nèi)存中只占有一塊區(qū)域。 Static Variable ,從創(chuàng)建類或結(jié)構(gòu)的第一個實(shí)例開始,靜態(tài)變量開始存在,以后增加的實(shí)例都將共享著一變量,直至類或結(jié)構(gòu)的所有實(shí)例都從內(nèi)存中清楚,相應(yīng)的靜態(tài)變量才被清楚。

    11、????????????? 類的靜態(tài)構(gòu)造函數(shù)只被調(diào)用了一次,而非靜態(tài)的構(gòu)造函數(shù)則在創(chuàng)建每個對象時都被調(diào)用。在創(chuàng)建類的第一個實(shí)例時,首先是將字段定義時的初始值賦予該字段(如未指定初始值則賦予其類型的默認(rèn)值),然后調(diào)用類的靜態(tài)構(gòu)造函數(shù),最后調(diào)用類的非靜態(tài)構(gòu)造函數(shù)。

    12、????????????? 對于所有的復(fù)合賦值操作符,只要其左部操作符是可重載的二元操作符,并且操作符重載的返回類型可以隱式地轉(zhuǎn)換為當(dāng)前類,那么相應(yīng)的賦值操作符也被隱式重載;被重載的操作符也是一種特殊的方法,且必須被聲明為公有的和靜態(tài)的。重載一元操作符時需提供一個參數(shù),且參數(shù)類型應(yīng)為當(dāng)前類型,或者是可以隱式轉(zhuǎn)換為當(dāng)前類型;重載二元操作符時需提供兩個參數(shù),且至少有一個參數(shù)類型應(yīng)為當(dāng)前類型,或者是可以隱式轉(zhuǎn)換為當(dāng)前類型。

    13、????????????? C# 中,大多數(shù)情況下,派生類不會一成不變地繼承基類中的所有成員,例如,。可能希望在某些字段中存儲不同的信息、在某些方法中執(zhí)行不同的操作等。這時就需要通過 new 關(guān)鍵字來隱藏基類中的成員。

    派生類的構(gòu)造函數(shù)對基類構(gòu)造函數(shù)的調(diào)用是自動的,因此基類構(gòu)造函數(shù) base ()不允許在代碼中顯示地使用,而只允許標(biāo)注在派生類構(gòu)造函數(shù)的聲明體之后。 Public Father():base( )

    {

    ? Console.WriteLine(“ 調(diào)用 Father 的構(gòu)造函數(shù) ”);

    }

    錯誤:

    Public Father( )

    {

    Base();

    Console.WriteLine(“ 調(diào)用 Father 的構(gòu)造函數(shù) ”);

    }

    14、????????????? 密封類是指不允許有派生類的類,而密封方法則是指不允許被重載的方法。密封方法所在的類不一定是密封類,而如果該類存在派生類,那么在派生類中就必須原封不動地繼承這個密封方法。接口的任何派生類型(包括類和接口)都必須繼承該接口定義的所有方法,而抽象類的任何派生類都必須繼承該抽象類定義的所有抽象方法;

    ?

    posted on 2006-09-02 10:51 放水老倌 閱讀(437) 評論(3)  編輯  收藏 所屬分類: .NET

    Feedback

    # re: 《C#2.0程序設(shè)計(jì)》讀書筆記 2006-09-03 17:15 matthew2006
    RFID小狂人拉!哈  回復(fù)  更多評論
      

    # re: 《C#2.0程序設(shè)計(jì)》讀書筆記 2006-09-06 13:33 na57
    提點(diǎn)建議:
    1, 看書不要太仔細(xì)了,有些東西了解就可以了,不用特別地去看,像char,struct等。
    2, 子類型到父類型的轉(zhuǎn)換問題。這種類型的問題可以深入了解,對理解面向?qū)ο蟮谋举|(zhì)有幫助。推薦看《.NET 本質(zhì)論》。同樣的,關(guān)于接口,靜態(tài)成員等問題也屬于面向?qū)ο蟮谋举|(zhì)問題,其實(shí),與C#本身關(guān)系不大。

    努力,加油!
      回復(fù)  更多評論
      

    # re: 《C#2.0程序設(shè)計(jì)》讀書筆記 2006-09-06 19:35 放水老倌
    看書都不太仔細(xì)了,只是對于這種入門而又基礎(chǔ)的東西,個人覺得要仔細(xì)一些。畢竟,根基打牢了,才好擴(kuò)展嘛。給對?xixi對于,入門以后,就大多是搞原理了。多謝小文指點(diǎn)!!!!
      回復(fù)  更多評論
      

    主站蜘蛛池模板: 国产成人亚洲精品狼色在线| 亚洲AV无码一区二区大桥未久| 国产精品成人免费综合| 丁香花在线视频观看免费| 狼人大香伊蕉国产WWW亚洲| 91亚洲国产成人久久精品| 亚洲日本va中文字幕久久| 免费A级毛片无码久久版| 在线天堂免费观看.WWW| 无人在线观看免费高清| 日本黄页网站免费| 18观看免费永久视频| 99在线热播精品免费99热| 无忧传媒视频免费观看入口| 亚洲人成www在线播放| 亚洲综合久久成人69| 亚洲av激情无码专区在线播放| 亚洲性日韩精品一区二区三区 | 最近2019中文字幕mv免费看 | 国产亚洲大尺度无码无码专线| 成年人在线免费看视频| 四虎最新永久免费视频| 97av免费视频| 久久成人免费播放网站| a级毛片免费全部播放无码| caoporm碰最新免费公开视频| 美女被羞羞网站免费下载| 国产精品亚洲精品爽爽| 亚洲av日韩精品久久久久久a| 亚洲一区二区三区丝袜| 亚洲中文字幕无码av永久| 亚洲五月综合缴情婷婷| 亚洲精品第一综合99久久| 亚洲jizzjizz在线播放久| 亚洲国产精品一区二区三区在线观看| 亚洲国产精品免费在线观看| 亚洲欧洲尹人香蕉综合| 亚洲sss综合天堂久久久| 亚洲欧洲国产综合AV无码久久| 亚洲性无码一区二区三区| 在线播放亚洲精品|