曾經看過的一些慕課網學習視頻,作下筆記,後序更新。函數
概念1:對象和類學習
圖1:對象和類的區別,對象具體到實物,類是一種事物的泛稱。(好比:對象貓、對象狗 --- 對應着動物類)this
圖2:對象和類的代碼塊,類定義了字段、屬性和方法。而對象則定義對應的字段、屬性、方法是什麼。(舉例:類的字段爲姓名、性別、年齡、身高以及方法愛好 --- 對應的對象即爲小明、男孩、6歲、120cm、踢足球)3d
圖3:一個簡單類的實現。視頻
圖4:實例化對象,也就是咱們常數的New一個對象。對象
概念2:方法blog
1.方法是對象的動態行爲,使用方法分爲兩個過程:定義方法+調用方法。string
2.方法又分爲無參方法 () 和有參方法 ("參數") 。無參方法通常調用之後就一種動態行爲,例如打人的無參方法就是打人;可是有參方法能夠根據不一樣的參數輸入,輸出不一樣的動態行爲,好比打人的有參方法能夠選擇輕打、重打或者打死,哈哈。bfc
3.方法的聲明是在類中,方法的調用能夠在類外面。構造函數
4.方法的重載:重載僅針對有參方法,也就是說,對同一種方法,輸入不一樣的參數,獲得不一樣的結果。以下圖:同一種方法EatSugar能夠根據不一樣的參數輸入,調用具體的方法。(說一個概念:下圖中形參即爲int count,實參即爲咱們輸入的數量,例如2)
5.return在方法中的兩個做用:結束方法調用+帶回返回值。
概念3:構造方法
1.無參構造方法與有參構造方法。(和上面的普通方法差很少,若是類裏面沒有特地的去聲明一個構造方法,那麼這個類其實已經默認的存在一個無參構造方法,固然若是你在類中定義好了一個構造方法,無論是有參的仍是無參的,那麼默認的那個無參構造方法就不存在了)。
2.構造方法的做用:爲屬性賦值。
3.構造方法一般聲明爲public
4.構造方法的特殊點之一就是沒有返回值類型。(好比int啊什麼的)
5.構造方法必須與類名相同。
6.咱們一般所說的new一個對象。其實new後面跟着的就是類的構造方法。
7.構造函數中可使用this關鍵字,用以訪問當前對象的字段和方法。
8.構造方法也是能夠和普通的方法同樣被重載的,具體的實現方法同樣,也是根據輸入參數的不一樣來區分的。
9.構造方法的初始化器:即在()與;之間加入一個{},大括號內的即爲對象初始化器的內容,可是要與你的有參構造函數所對應。
概念4:值類型與引用類型
1.這個就不說了,記住string和類是引用,結構struct是值類型便可。
2.結構的一點概念:結構能夠定義字段、屬性和方法;不能爲結構中的字段賦初值;結構的構造方法必須爲全部字段賦值;不能爲結構顯示的定義無參的構造方法;結構類型的對象能夠不實例化。
3.枚舉:必定範圍內的東西爲了方便操做而搞的,好比一週就7天,性別只有男和女,能夠用枚舉來搞。他也有三個特色:1.值類型;2.枚舉裏面不能夠定義字段、屬性和方法;3.枚舉值是從0遞增的整數。
4.ref和out關鍵字:ref用來傳參,即當個人蔘數是值類型的時候,能夠用引用類型來傳遞;以下圖咱們在調用Growth函數時,參數使用ref關鍵字,使得該參數能夠以引用類型來操做,運行一次得4,若是不使用ref關鍵字,則運行後得3。這也是值類型與引用類型的區別所在,值類型形參改變,實參是不變的,引用類型跟着變。
out用來獲取結果,相比與return來講,return每次只返回一個結果,若是想返回多個結果,則使用關鍵字out。固然你在調用這個函數的時候也須要使用out關鍵字,我沒有截圖,目的也是把值類型當成引用類型來用。
可觀看慕課網視頻,我的感受最佳詳細且關聯性很強。