本帖最后由 黄宝宝 于 2014-8-21 18:13 编辑
每一次线程1和线程0产生的data随机数是一样的,觉得很奇怪,太巧了吧,还是我没有看清楚,哪里写错了??- package cn.p1.TraditionThread;
- import java.util.Random;
- /*
- * 线程范围内的共享变量
- */
- public class ThreadScopeShareData {
- private static int data=0;//共享数据
- public static void main(String[] args) {
- //创建两个线程
- for(int i =1;i<=2;i++){
- new Thread(
- new Runnable() {
-
- @Override
- public void run() {
-
- data=new Random().nextInt()
- System.out.println(Thread.currentThread().getName()+",has put data "+data)
- new A().get();
- new B().get();
-
- }
- }
- ).start();
- }
- }
- static class A
- {
- public void get()
- {
- System.out.println("A form "+Thread.currentThread().getName()+",has get "+data);
- }
- }
- static class B
- {
- public void get()
- {
- System.out.println("B form "+Thread.currentThread().getName()+",has get "+data);
- }
- }
- }
复制代码
|
|