java初学者有关问题,请高手门帮忙解答! 有关构造函数传参数的有关问题!

java菜鸟问题,请高手门帮忙解答!! 有关构造函数传参数的问题!!
本人初次接触JAVA,有些问题希望高手们帮忙解答,我有两个类A和B   ,
A从MIDlet类派生,   B从Thread类派生。现在我在A的一个函数中启动B线程,
同时将A对象自己作为参数,传给B线程,这样B线程就可以读取A对象所有的
public的成员变量。请问下面的方法对吗,我用同样的结构编了一个程序编了一个程序结果编译不过,请问是什么原因.


调用关系如下:


public   class   A   extends   MIDlet
        implements   CommandListener,   PlayerListener,   Runnable,   ItemCommandListener
{
        public     int     a1;
        public   A()
        {
            ....;
        }

     
      .....

        public   void   mytest()
        {
   
    B   b   =   new   B(this);
    b.start();
                                             
        }
}

class   B   extends   Thread
{
        private     int     a1;
        public   void   B(A   a)
        {
        a1   =   a.a1;
        }  
      public   void   run()
{
....
}
}

------解决方案--------------------

public void B(A a)
{
a1 = a.a1;
}

修改成
public B(A a)
{
a1 = a.a1;
}
就好了
------解决方案--------------------
构造函数不需要返回类型