public class Test extends Activity {
    public static TestView testView;
    public static Activity test ;
    public void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
        test = this;
     testView = new TestView(this);
        setContentView(R.layout.main);
        Button btn = (Button)findViewById(R.id.button_connect);
        btn.setOnClickListener(new Button.OnClickListener() {
          public void onClick(View v) {
       
         TestMethod testMethod = new TestMethod();
         testMethod.triggerMethod();
         //trigger(); 주석제거
          }
        });
    }
    public void trigger(){
     Intent intents = new Intent(Test.this, Test2.class);
  startActivity(intents);
    }
 }
public class TestMethod {
 
 
 public void triggerMethod(){
    
  Test test = new Test();
  test.trigger(); 주석처리
  
 }
}
public class Test2 extends Activity{
  public static TestView testView;
  public Test test;
  public void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
  
      testView = new TestView(this);
   setContentView(testView);
  }
}
public class TestView extends View{
 
 private static final String TAG = "TestView";
 private ShapeDrawable mDrawable;
    
 public TestView(Context context) {
  super(context);
  mDrawable = new ShapeDrawable(new OvalShape());     
      
 }

 protected void onDraw(Canvas canvas) {
    
    Bitmap bm = BitmapFactory.decodeResource(getResources(),R.drawable.icon); 
   canvas.drawColor(Color.BLACK);
   canvas.drawBitmap(bm, 0, 0, null);
   mDrawable.draw(canvas);
         
 }
}

코드의 내용은 Test 의 onClick 이벤트시 TestMethod 클래스의 triggerMethod를 호출하고, triggerMethod는 다시 Test Activity의 trigger 메소드를 호출함으로써 Test2 Activity를 실행시키는 간단한 프로그램입니다.
하지만 이렇게 Test Activity(onClick)-> TestMethod Class(triigerMethod) -> TestActivity(trigger, startActivity) ->Test2 Activity 실행
하면
11-28 02:43:30.057: ERROR/AndroidRuntime(2898): java.lang.NullPointerException
11-28 02:43:30.057: ERROR/AndroidRuntime(2898):     at android.content.ContextWrapper.getPackageName(ContextWrapper.java:120)
11-28 02:43:30.057: ERROR/AndroidRuntime(2898):     at android.content.ComponentName.<init>(ComponentName.java:75)
11-28 02:43:30.057: ERROR/AndroidRuntime(2898):     at android.content.Intent.<init>(Intent.java:2678)
11-28 02:43:30.057: ERROR/AndroidRuntime(2898):     at ac.kr.pknu.Test.trigger(Test.java:31)

이런식으로 NullPoint Error가 뜨더군요.
물론 Test Activity 자체에서 trigger 메소드를 호출하면 Test2 Activity가 실행이 됩니다.
제가 원하는 방식은 TestMethod를 거쳐 Test Activity의 trigger 메소드를 호출하는 방식 입니다.
어떻게 해야 제가 원하는 방식으로 Activity를 실행 시킬수 있을까요?