Почему List.Sort () является методом экземпляра, а Array.Sort () статичен?

Я пытаюсь понять дизайнерское решение, лежащее в основе этой части языка . Признаюсь, я новичок во всем этом, но это то, что меня сразу зацепило, и мне было интересно, не упускаю ли я очевидную причину. Рассмотрим следующий код:

List<int> MyList = new List<int>() { 5, 4, 3, 2, 1 };
int[] MyArray = {5,4,3,2,1};


//Sort the list
MyList.Sort();
//This was an instance method


//Sort the Array
Array.Sort(MyArray);
//This was a static method

Почему они не реализованы одинаково - интуитивно для меня было бы больше смысла, если бы они оба были методами экземпляра?

38
задан BoltClock 15 July 2011 в 22:51
поделиться