リフレクションとかは使っていません。
上の例でいうと、
class A
{
  ...
  public void M()
  {
   ...
  }
}
を
A[] a = new A[1000];
のように使用した場合です。