程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> 關於C# >> 談談C#的私有成員的一個有趣的現象!

談談C#的私有成員的一個有趣的現象!

編輯:關於C#

大家都知道,一個類的私有成員只能在他的內部訪問!

但是不知道大家注意到沒有,實際上在C#中一個類的實例是可以訪問同一個類的另外一個實例的私有成員的。

請看這段簡單的代碼

public class MyClass
    {
        private int i = 0;

        public void Function()
        {
            MyClass a = new MyClass();
            Console.WriteLine( a.i);  //這裡成功訪問了另外的一個實例a的私有實例字段


        }

     }

大家也可以自己寫一段類似的代碼來測試一下,的確是可以訪問另外一個實例的私有成員!

為什麼呢 因為C#就是一開始就是這樣設計的。實際上這個設計在某種程度上破壞了對象的封裝性,其他的面向對象的語言可能就沒有做這樣的設計了。

希望大家可以注意到這個問題,為了保證對象良好的封裝性,最好不要這樣訪問啊!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved