Home [C# 筆記] .Net基礎-複習-R
Post
Cancel

[C# 筆記] .Net基礎-複習-R

TODO: 單例模式,只能創建一個物件(對象)


1.註解

///**////

  • 單行註解://註解單行代碼
  • 多行註解:/* 要註解的內容 */
  • 文檔註解:///註解類別和方法
  • HTML:
  • CSS:/* 要註解的內容 */

2.命名規範

  • Camel駱駝命名:變數/變量、Field(欄位/字段) 要求首單詞的或字母小寫,其餘單詞首字母大寫,變數/變量、欄位/字段
    • int agestring namechar genderstring highSchool
    • int _chiness
  • Pascal帕斯卡命名:類別、方法、屬性名 類別、方法、屬性名
  • GetMaxGetSum定義的變量或方法,名字要有意義
  • 方法名:動詞 Write()Open()Close()Dispose()GetUserId()…方法都是要做一件事情
  • 變量名:按功能命名、按方法的返回值內容命名 userName = GetUserName();

3.物件導向(面向對象)複習

1、封裝、繼承、多型(多態)

  • Field(欄位/字段):儲存數據,訪問修飾符應該設置為private私有的。
  • 屬性:保護Field(欄位/字段),對Field的取值和賦值進行限定。

  • new關鍵字:
    1. 在heap(堆積/堆)當中開闢空間
    2. 在開闢的空間中創建物件(對象)
    3. 調用物件(對象)構造函數
  • 構造函數的作用是什麼? 初始化物件(對象),當創建物件(對象)的時候,會調用構造函數

  • 對Field(欄位/字段)的保護方法:
    1. get()
    2. set()
    3. 構造函數
  • return
    1. 立即結束本次方法(立即離開方法)
    2. 在方法中返回要返回的值return age = 0;

4.繼承複習

解決代碼的冗餘,實現多形(多態),增加了代碼的擴展素,便於維護。

繼承有兩個很重要的特性:

  1. 單根性
  2. 傳遞性
    • 子類並沒有繼承父類的構造函數,而是會默認調用父類的那個無參數的構造函數。
    • 如果一個子類繼承了一個父類,那麼這個子類除了可以使用自己的成員外,還可以使用從父類那邊繼承過來的成員。但是父類永都只能使用自己的成員,而不能使用子類的成員。子類之間也不能互相使用對方的成員。

5.里氏轉換(LSP)

  1. 子類可以賦值給父類
  2. 如果父類中裝的是子類對象(物件),那麼可以將個父類轉換為子類對象(物件)
    asis兩個關鍵字做轉換
  3. as:轉換成功返回對應的對象(物件),轉換失敗返回null
  4. is:is會用在判斷,轉換成功回傳true,失敗回傳false

6.多態(多型)

實現多態(多型)的三個方法

  1. 虛方法virtual
  2. 抽象類abstract
  3. 接口(介面)interface

Q:什麼時候用虛方法virtual
如果這個父類有意義,能夠創建對象(物件),並且這個方法可以調用的話,可以寫成虛方法。

Q:什麼時候用抽象類abstract
如果說父類不知道如何實現,方法也不知道怎麼寫,可以用抽象類

This post is licensed under CC BY 4.0 by the author.