C 基礎知識整理 C 類和結構(2)

2021-09-03 11:04:19 字數 2135 閱讀 2837

1、什麼是建構函式? 有哪些建構函式? 各個建構函式的定義、實現方法、注意事項?

所謂建構函式,就是乙個方法,這個方法可以初始化物件,即執行完這個函式後,記憶體總開闢了一塊該類的物件的空間。有三種:正常的建構函式,也就是例項化建構函式;私有建構函式;靜態建構函式。

例項化構造器:

public class example                  public example(string p1, string p2, int p3)//傳入的值初始化                }
私有構造器:

私有構造器,外部是不能訪問的,那麼如何例項化呢,參見單例模式,這裡就是用了私有建構函式:

靜態建構函式:

先看例子:

public class staticconstruct                  public staticconstruct()                      public staticconstruct(string flage)                }        class program            }
結果:

靜態建構函式特點:靜態建構函式中不允許出現訪問修飾符;例項化的時候,首先自動呼叫靜態建構函式,意即呼叫靜態建構函式是不可控的;靜態建構函式是無參的,並且乙個類中只有乙個;不能被繼承。

2、this關鍵字和base關鍵字用途? 實現**?

(1)、this關鍵字:

this顧名思義,就是指本類中的意思,引用當前類的成員。當然如果程式在執行中,則可以精確地說,this指當前類的物件的成員,作用就是用來區分物件的。因為乙個類可以有n個物件。不過在static類中不能使用this關鍵字,究其原因,無非是static不可能例項化多個物件,它只有乙個,自然沒必要去用this來區分物件了。一般常用如下:

a、方法或建構函式中,同名變數。

public class mytesta                  public void handler(string testa)                }
b、get,set方法

public class mytestb                    set                         }      }
c、將例項傳遞

比如,事件中

public class mytestc                }            private void testevent()                }        public class mytestd                }            public mytestd()                      void testc_ontestevent(object sender, eventargs e)                }        public class myteste                  void testd_ontestdevent(object sender, eventargs e)                    }      }
(2)base關鍵字:

一般用於,子類訪問父類。

一種是,重寫父類方法時,

public class parentclass            }        public class childclass : parentclass            }
另一種,子類呼叫父類建構函式,

public class parentclass                  public virtual void methoda()                }        public class childclass : parentclass                  public override void methoda()                }
3、什麼是反射? 如何實現反射? 反射有何優缺點? 何時使用反射?

C 基礎知識整理 C 類和結構(2)

1 什麼是建構函式?有哪些建構函式?各個建構函式的定義 實現方法 注意事項?所謂建構函式,就是乙個方法,這個方法可以初始化物件,即執行完這個函式後,記憶體總開闢了一塊該類的物件的空間。有三種 正常的建構函式,也就是例項化建構函式 私有建構函式 靜態建構函式。例項化構造器 public class e...

C 基礎知識整理 基礎知識(2) 類

類,是物件導向語言的基礎。類的三大特性 封裝 繼承 多型。最基本的特性就是封裝性。程式設計師用程式描述世界,將世界的所有事物都看成物件,怎麼描述這個物件?那就是類了。也就是用類來封裝物件。用書上的話說,類是具有相同屬性和行為的物件的抽象。寶馬汽車 別克汽車 五菱之光汽車.基本具有相同的屬性和行為,所...

C 基礎知識整理 基礎知識(2) 類

類,是物件導向語言的基礎。類的三大特性 封裝 繼承 多型。最基本的特性就是封裝性。程式設計師用程式描述世界,將世界的所有事物都看成物件,怎麼描述這個物件?那就是類了。也就是用類來封裝物件。用書上的話說,類是具有相同屬性和行為的物件的抽象。寶馬汽車 別克汽車 五菱之光汽車.基本具有相同的屬性和行為,所...