回覆列表
  • 1 # 使用者508873978285

    你需要看一下入門的書籍,再理解一下C#語法規範。

    c#是一種面向物件的語言,也就是說,你的class A\B 都是物件。

    而你宣告的變數 x 是在A中的,

    也就是說,當代碼沒有執行到class A的時候, 你是不可能知道A中有一個x 的。

    所以,你在classA中,去操作類內部的變數,肯定是可以的,因為程式碼一定會執行,

    而你在classB中,你是在執行B的程式碼,如果你要呼叫x,你就要先把classA給例項化,讓編譯器知道你在用A了,才可以呼叫A中的x。

    如果你想不用new 就訪問一個變數,可以使用static修飾符

    public static class A

    {

    public static int x;

    }

    這樣只要程式啟動,A和x都一直在記憶體中,你隨時可以直接呼叫,但是由於是靜態的,他們是不會被dispose的,也就是一直在佔記憶體。

    而之前的做法,當A不被呼叫的時候,垃圾回收器會自動回收A,釋放記憶體。

  • 中秋節和大豐收的關聯?
  • 華為nova4鎖屏密碼忘了怎麼辦?