A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始


class Test1
{
        String name;
        String sex;
}
class Inter implements Runnable
{
        private Test1 t;//这句话什么意思啊?????????????,是怎么调用的对象啊?
        Inter(Test1 t)//还有这句
        {
                this.t=t;
       
        }
        public void run()
        {
                int x=0;//设置一个局部变量
                while(true)
                {
                        synchronized(t)
                        {
                        if(x==0)//交替往里面赋值
                        {
                                t.name="lili";
                                t.sex="女";
                        }
                        else
                        {
                                t.name="mike";
                                t.sex="man";
                       
                        }
                        x=(x+1)%2;
                        }
                }
        }
}
class Outer implements Runnable
{
        private Test1 t;//
        Outer(Test1 t)
        {
       
                this.t=t;
        }
        public void run()
        {
                while(true)
                {
                        synchronized(t)
                        {
                        System.out.println(t.name+"...."+t.sex);//输出打印
                        }
                }
        }
}




class  Test1Demo
{
        public static void main(String[] args)
        {
                Test1 t=new Test1();//创建对象
                Inter i=new Inter(t);//创建对象
                Outer o=new Outer(t);//创建对象
                Thread t1=new Thread(i);//将对象导入Thread
                Thread t2=new Thread(o);
                t1.start();//开始运行
                t2.start();//开始运行
        }
}

评分

参与人数 1技术分 +1 收起 理由
杨佳名 + 1

查看全部评分

2 个回复

倒序浏览
其实很好理解哦,楼主。①这句话的意思就是新建一个引用来接收要调用的对象
②这个就是线程的构造函数了,你在main函数中不是将t传给Inter和Outer吗,这个构造函数就同时接收了Test1的对象,他们就可以共同操作这个对象了



  1. class Test1
  2. {
  3.         String name;
  4.         String sex;
  5. }
  6. class Inter implements Runnable
  7. {
  8. ①private Test1 t;//这句话什么意思啊?????????????,是怎么调用的对象啊?
  9. ②Inter(Test1 t)//还有这句
  10.         {
  11.                 this.t=t;
  12.         
  13.         }
  14.         public void run()
  15.         {
  16.                 int x=0;//设置一个局部变量
  17.                 while(true)
  18.                 {
  19.                         synchronized(t)
  20.                         {
  21.                         if(x==0)//交替往里面赋值
  22.                         {
  23.                                 t.name="lili";
  24.                                 t.sex="女";
  25.                         }
  26.                         else
  27.                         {
  28.                                 t.name="mike";
  29.                                 t.sex="man";
  30.                         
  31.                         }
  32.                         x=(x+1)%2;
  33.                         }
  34.                 }
  35.         }
  36. }
  37. class Outer implements Runnable
  38. {
  39.         private Test1 t;//
  40.         Outer(Test1 t)
  41.         {
  42.         
  43.                 this.t=t;
  44.         }
  45.         public void run()
  46.         {
  47.                 while(true)
  48.                 {
  49.                         synchronized(t)
  50.                         {
  51.                         System.out.println(t.name+"...."+t.sex);//输出打印
  52.                         }
  53.                 }
  54.         }
  55. }




  56. class  Test1Demo
  57. {
  58.         public static void main(String[] args)
  59.         {
  60.                 Test1 t=new Test1();//创建对象
  61.                 Inter i=new Inter(t);//创建对象
  62.                 Outer o=new Outer(t);//创建对象
  63.                 Thread t1=new Thread(i);//将对象导入Thread
  64.                 Thread t2=new Thread(o);
  65.                 t1.start();//开始运行
  66.                 t2.start();//开始运行
  67.         }
  68. }
复制代码




评分

参与人数 1技术分 +1 收起 理由
船长 + 1 赞一个!

查看全部评分

回复 使用道具 举报
恩恩 谢谢你:lol
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马