안녕하세요.
잘 돌아가던 소스를 처리부와 함수부로 소스를 나눌 필요가 있어 나누었더니

threadid=1: thread exiting with uncaught
exception unable to start activity componentinfo

에러가 납니다. class 의 배열 또는 int 배열을 초기화 하면서 오류가 나는 것 같습니다.

// Example.java 파일

public class Example extends Activity
{
    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(new MainView(this));
    }
}


// DrawCommand.java 파일

public abstract class DrawCommand extends SurfaceView implements SurfaceHolder.Callback
{
 Maingame_Thread mThread ;
 Canvas Now_Canvas ;
 Context Now_Context ;
 SurfaceHolder mHolder ;
 boolean mLoop ;

 class Maingame_Thread extends Thread
 {
  public Maingame_Thread(Context context, SurfaceHolder holder)
  {
   mHolder = holder ;
          Now_Context = context ;

          main() ;  
  }
  
  public void run()
  {
           
  }
 } 

 public abstract void main();
}


// MainView.java 파일

public class MainView extends DrawCommand
{
 public MaingameView(Context context)
 {
  super(context);
 }

 class _stcChrData
 {
  int Section ; 
  int Visible ;
 }  ;

 _stcChrData _stcChrData = new _stcChrData() ;       

 class _stcMapData
 {
  int Sight ; 
  int VArea ; 
 }  ;

 _stcMapData MapData[] = new _stcMapData[100] ;

 public void main()
 {
  int for_init ;

  _stcDatas Datas  = new _stcDatas() ;       

  for(for_init = 0; for_init < 100; for_init++)
   MapData[for_init] = new _stcMapData() ;            <--- 이곳에서 오류가 납니다.

 }
}


어디가 잘 못 된 걸까요.
부디 고수님들의 소중한 정보 부탁드립니다.