java 第58节 线程同步问题的由来
Posted 岑亮
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 第58节 线程同步问题的由来相关的知识,希望对你有一定的参考价值。
2016-07-01
package com.java1995; /** * 打印机类 * @author Administrator * */ public class Print { /** * * @param name 学生姓名 * @param eScore 英语成绩 * @param mScore 数学成绩 * @param yScore 语文成绩 */ public void printScore(String name,int eScore,int mScore,int yScore){ System.out.println(name+"的英语成绩:"+eScore); try { Thread.sleep(2000); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println(name+"的数学成绩:"+mScore); System.out.println(name+"的语文成绩:"+yScore); } }
package com.java1995; /** * 老师类 * @author Administrator * */ public class Teacher implements Runnable{ //封装 private Print p; private String name; private int eScore,mScore,yScore; public Teacher(Print p,String name,int eScore,int mScore,int yScore){ this.p=p; this.name=name; this.eScore=eScore; this.mScore=mScore; this.yScore=yScore; } //封装的实现 public Print getP() { return p; } public void setP(Print p) { this.p = p; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int geteScore() { return eScore; } public void seteScore(int eScore) { this.eScore = eScore; } public int getmScore() { return mScore; } public void setmScore(int mScore) { this.mScore = mScore; } public int getyScore() { return yScore; } public void setyScore(int yScore) { this.yScore = yScore; } //重写run()方法 @Override public void run() { // TODO Auto-generated method stub p.printScore(name, eScore, mScore, yScore); } }
package com.java1995; public class Test { public static void main(String[] args) { Print p=new Print(); Teacher t1=new Teacher(p,"博尔特",10,11,12); Teacher t2=new Teacher(p,"加特林",23,56,1); Teacher t3=new Teacher(p,"苏炳添",34,55,90); Thread th1=new Thread(t1); Thread th2=new Thread(t2); Thread th3=new Thread(t3); th1.start(); th2.start(); th3.start(); } }
以上是关于java 第58节 线程同步问题的由来的主要内容,如果未能解决你的问题,请参考以下文章
阶段1 语言基础+高级_1-3-Java语言高级_05-异常与多线程_第3节 线程同步机制_3_线程安全问题产生的原理
Java面试宝典线程安全问题|线程死锁的出现|线程安全的集合类
阶段1 语言基础+高级_1-3-Java语言高级_05-异常与多线程_第4节 等待唤醒机制_8_等待唤醒机制代码实现_包子类&包子铺类