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

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

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

    飛翔的起點

    從這里出發(fā)

    導(dǎo)航

    <2008年4月>
    303112345
    6789101112
    13141516171819
    20212223242526
    27282930123
    45678910

    統(tǒng)計

    常用鏈接

    留言簿(5)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    C#學(xué)習(xí)筆記一

     

    第一章   設(shè)計模式概述

    設(shè)計模式能夠使解決方案既優(yōu)雅簡單,又可復(fù)用。設(shè)計模式僅僅是一些項目之間和程序員之間面向?qū)ο蟠a的簡便方法,設(shè)計模式背后的思想很簡單:對通用的對象間的相互作用方式進行記錄和編目(程序員經(jīng)常發(fā)現(xiàn)這些對象見的相互終于哦用方式很有用)。換言之,設(shè)計模式描述了對象如何進行通信才能不牽扯相互的數(shù)據(jù)模式和方法,保持這種獨立性一直是一個好的面向?qū)ο蟪绦蛟O(shè)計的目標(biāo)。從而可以實現(xiàn)代碼的可復(fù)用性。

    1.       設(shè)計模式

    設(shè)計模式是對讀者經(jīng)常遇到的設(shè)計問題的可再現(xiàn)的解決方案。

    設(shè)計模式建立了一系列描述如何完成軟件開發(fā)領(lǐng)域中特定任務(wù)的規(guī)則。

    設(shè)計模式更關(guān)注于復(fù)用和重復(fù)出現(xiàn)的結(jié)構(gòu)設(shè)計方案,而框架注重于具體的設(shè)計和實現(xiàn)。

    模式提出了一個發(fā)生在特定設(shè)計環(huán)境中的可重復(fù)出現(xiàn)的設(shè)計問題,并提供了解決方案

    模式識別并確定類和實例層次上或組件層次上的抽象關(guān)系

    設(shè)計模式有三種類型

             創(chuàng)建型模式是創(chuàng)建對象而不是直接實例化對象,這會使程序在判斷給定情況下創(chuàng)建那一個對象時更靈活。

             結(jié)構(gòu)型模式可以將一組對象組合成更大的結(jié)構(gòu),例如復(fù)雜的用戶界面和報表數(shù)據(jù)

             行為型模式定義系統(tǒng)內(nèi)對象間的通信,以及復(fù)雜程序中的流程控制

    2.       關(guān)于面向?qū)ο蠓椒?/span>

          封裝和繼承能讓程序員達到分離類的目的,一個繼承父類的類能訪問父類所有方法和所有非私有變量,但是如果一個功能完整的類開始繼承層次結(jié)構(gòu),可能過多的限制住了自己,也會給特定的實現(xiàn)帶去累贅,設(shè)計模式建議遵循下列原則:針對接口編程,而不是針對實現(xiàn)編程。即在任何類層次結(jié)構(gòu)的頂端,定義的是一個抽象類或一個接口,他沒有實現(xiàn)方法,但是定義了該類需要支持的方法,這樣在所有的派生類中,就會有更大的自由度去實現(xiàn)這些方法,能最大限度地滿足你的要求。

             對象組合,這是一種可以包含其他對象的對象結(jié)構(gòu),即把幾個對象封裝在另一個對象中,當(dāng)編寫比較復(fù)雜的程序,對象組合具有一些優(yōu)勢,新的對象擁有一個最適合于要完成的目標(biāo)的接口,而不是擁有父類中的所有方法,說明了編程的第二個原則:優(yōu)先使用對象組合,而不是繼承。

            

    C#基礎(chǔ)知識

             C#javavb的區(qū)別

             C#Java都是區(qū)別大小寫的;C#中的每一條語句都已分號結(jié)束;而vb是不區(qū)分大小寫的,

             C#中的修飾符const的含義是:被命名的值是一個常數(shù),不能更改。

    數(shù)據(jù)類型

             基本數(shù)據(jù)類型的長度與計算機或操作系統(tǒng)的類型無關(guān)。

             寬度窄的數(shù)據(jù)類型可以直接賦給較寬的數(shù)據(jù)類型,并能自動轉(zhuǎn)化為新類型。

             可以通過強制轉(zhuǎn)化把較寬的類型縮減成較窄的類型,這種轉(zhuǎn)化需要把數(shù)據(jù)類型的名稱放在圓括號內(nèi)。

             Javac#的布爾變量只能接受保留字truefalse所表示的值,與cc++不同,不能將數(shù)值型數(shù)據(jù)賦給布爾型變量,也不能在布爾類型和其他數(shù)據(jù)類型之間轉(zhuǎn)化。

    數(shù)值與字符串間的轉(zhuǎn)化,可以使用Convert類的方法實現(xiàn)數(shù)值轉(zhuǎn)化成字符串或?qū)⒆址D(zhuǎn)化成數(shù)值。例如:

    String s=Convert.ToString(x);

    Float y=Convert.ToSingle(s);   //single代表一個單精度浮點數(shù)

    數(shù)值型對象也提供了各種格式話方法類指定小數(shù)位數(shù)

    Float x=12.3453234f;

    String s=x.ToString(“###.###”); //gives 12.345

    注意最后一位進行四舍五入

    C#java允許在一條語句里聲明同一類型的多個變量

    數(shù)值型常量,任何數(shù)如果沒有小數(shù)部分的話,就自動為整數(shù)類型,如果有小數(shù)部分 ,就自動為double類型,如果想指定成不同的類型,可以使用各種前綴和后綴字符。

    C#中有三個保留字常量,truefalsenullnull表示一個對象變量還沒有 指定任何對象。

     

    字符常量

    用但引號把字符括起來表示字符常量,轉(zhuǎn)意字符和cjava中約定的一樣。

     

     

    C#java的區(qū)別

    1.       許多系統(tǒng)對象方法都有相同的方法名,只是在大小寫形式上有區(qū)別

    2.       C#不提供throws關(guān)鍵字,該關(guān)鍵字使編譯器檢查你是否鋪貨了一個方法拋出的異常。

    3.       C#對于布局管理器有更多的限制,因為他是以windows系統(tǒng)為中心的,大多數(shù)時候采用的圖形元素的絕對位置。

    4.       C#允許運算符重載

    5.       C#引進了代理和索引器

    6.       C#有枚舉類型

    7.       C#有不安全模式,在這種模式下可以使用指針

    8.       必須專門聲明一個方法能被覆蓋及一個方法能覆蓋另一個方法

    9.       不能通過聲明來區(qū)別繼承和接口實現(xiàn),他們的聲明方式是一樣的

    10.   Switch語句允許使用字符串變量,如果變量沒有被匹配,必須有一個默認(rèn)情況,否則會出現(xiàn)錯誤,break語句是必須的。

    11.   布爾值變量類型在C#中拼為“bool”,而java中拼為“boolean

     

    C#C的區(qū)別

    1.       C#通常不能使用指針

    2.       可以在一個方法里的任何位置聲明變量,不必把聲明語句放在方法的頂端

    3.       使用一個對象前,不一定要聲明它,可以在用到的時候在定義

    4.       C#對結(jié)構(gòu)體類型偶那個的定義有些不同,他根本不支持聯(lián)合類型

    5.       C#有枚舉類型,允許一系列被命名的量(如顏色或一周里的每一天)賦值為連續(xù)的數(shù)值,但是語法有些不同。

    6.       C#沒有位域,也就是說,變量至少要占用一個字節(jié)的存儲空間

    7.       C#不支持變長參數(shù)列表,必須針對參數(shù)值和類型定義一個方法,然而C#語句允許函數(shù)的最后一個參數(shù)為可變參數(shù)數(shù)組

    8.       C#引入了代理和索引器的思想,這些在其他流行的語言中是沒有的。

     

     

    C#編寫windows程序

    1.       C#中的對象

    C#中的任何食物都被看做是對象,對象包含數(shù)據(jù)并具有操作數(shù)據(jù)的方法,

    整型變量、浮點型變量和雙精度型變量也是對象,他們也具有方法

    注意:

               數(shù)值類型的轉(zhuǎn)化是用方法而不是外部函數(shù)完成的。在把一個數(shù)值格式化成一個特定的字符串時,每種數(shù)值類型都提供了一個格式化方法。

    2.       受管語言和垃圾自動收集

    C#VB.NET都是受管語言,有兩個含義:一個是兩者被編譯成中間的底層語言,都使用通用語言運行時(Common Language RuntimeCLR)執(zhí)行編譯后的代碼,或者進一步編譯這些代碼。另一方面,受管語言都是垃圾自動收集的,垃圾自動收集語言負(fù)責(zé)師傅拿個不用的內(nèi)存,垃圾收集系統(tǒng)一旦檢測到變量、數(shù)組或?qū)ο蟛辉诒灰茫桶严鄳?yīng)的內(nèi)存空間釋放回系統(tǒng),在大多數(shù)情況下,根本不用考慮內(nèi)存的分配與釋放問題。

    posted on 2008-04-01 16:54 forgood 閱讀(279) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲经典在线中文字幕| 夭天干天天做天天免费看| 亚洲一区精品伊人久久伊人| 国产精品亚洲一区二区在线观看| 久久WWW免费人成人片| 亚洲国产成人精品电影| 国产大片线上免费观看| 99999久久久久久亚洲| 67194成是人免费无码| 亚洲国产精品嫩草影院| 国产三级免费电影| 一区二区三区免费在线观看| 国产亚洲日韩在线三区| 久久综合九色综合97免费下载| 亚洲邪恶天堂影院在线观看| 最近免费中文字幕高清大全| 亚洲免费电影网站| 国产精品色午夜视频免费看| 色噜噜狠狠色综合免费视频| 中文字幕专区在线亚洲| 最近中文字幕mv免费高清视频8| 亚洲乱码中文字幕小综合| 四虎在线免费播放| 一区二区三区免费高清视频| 亚洲AV一宅男色影视| 青青视频观看免费99| 国产精品亚洲精品日韩动图| 亚洲乱码中文字幕综合| 鲁大师在线影院免费观看| 亚洲中文字幕无码亚洲成A人片| 国产男女猛烈无遮挡免费视频 | 野花高清在线观看免费3中文| 亚洲精品美女久久久久久久| 亚洲一级特黄大片在线观看| 日本免费污片中国特一级| 亚洲熟妇成人精品一区| 国产亚洲精品无码专区| 午夜国产精品免费观看| 成人a毛片视频免费看| 亚洲综合久久1区2区3区 | 色www永久免费视频|