下面的代码是大概思路,还不完善,重在理解
好了,上代码
package com.lyj; /** * 多个线程操作同一个对象, 卖票 * 执行代码相同,放在一个Runnable中 */ public class MultiThreadShareData_sellTicket { public static void main(String[] args) { Sell sell = new Sell(); //两个线程模拟不同地点 new Thread(sell).start(); new Thread(sell).start(); } } class Sell implements Runnable { //票的数量 private int count = 100; @Override public synchronized void run() { count--; System.out.println("剩余票count=" + count); } }