2014年1月31日 星期五

[C#] 題目練習Q&A part 2.

7.編譯頁面上所有TextBox控制項並給它賦值為ABC

  1.  foreach (TextBox txt in Form.Controls.OfType<TextBox>())
  2.             {
  3.                 txt.Text = "ABC";
  4.             }


8.用.net做B/S結構的系統,您是用幾層結構來開發,每一層之間的關系以及為什么要這樣分層?
答︰一般為3層
數據存取層,業務層,呈現層。
數據訪問層對數據庫進行增刪查改。
業務層一般分為二層,業務層實作與呈現層的溝通,業務規則層實現用戶密碼的安全等。
呈現層與用戶互動,如用戶添加表單。

好處是易於維護、調整,具有可擴展性。

9.此範例中 , NEW B 會出現甚麼結果??
  1. public class A
  2.     {
  3.         public A()
  4.         {
  5.             PrintFields();
  6.         }
  7.         public virtual void PrintFields()
  8.         {
  9.             HttpContext.Current.Response.Write("???");
  10.         }
  11.     }
  12.     public class B : A
  13.     {
  14.         int x = 1;
  15.         int y;
  16.         public B()
  17.         {
  18.             y = -1;
  19.         }
  20.         public override void PrintFields()
  21.         {
  22.             HttpContext.Current.Response.Write(string.Format("x={0},y={1}", x, y));
  23.         }
  24.     }

答 : x=1,y=0
B在建構時會先呼叫基礎類別的建構函示。

10.什么是受管製的代碼?
答︰unsafe︰非托管代碼。不經過CLR運行。

CLR: common language runtime

11. string a =null  與 string b = "" 差別
a 是指向NULL,並沒有產生實體heap記憶體。
b是指向一個heap記憶體,而內容是一個空字串。

沒有留言:

張貼留言