全球旧事资料 分类
资源下载地址:httpdow
loadcsd
etdetailcloudyxuq3763101
四.多线程的同步
以一个取钱列子来分析:(用户登录那些省略)Accout类:
javaviewplai
copy

银行取钱,账户类publicclassAccout账户编号privateStri
gaccoutNo账户余额privatedoublebala
ce账户名称privateStri
gaccoutNamepublicAccout
superpublicAccoutStri
gaccoutNoStri
gaccoutNamedoublebala
cesuperthisaccoutNoaccoutNothisbala
cebala
cethisaccoutNameaccoutNamepublicStri
ggetAccoutNoretur
accoutNopublicvoidsetAccoutNoStri
gaccoutNothisaccoutNoaccoutNopublicdoublegetBala
ceretur
bala
cepublicvoidsetBala
cedoublebala
cethisbala
cebala
cepublicStri
ggetAccoutNameretur
accoutNamepublicvoidsetAccoutNameStri
gaccoutNamethisaccoutNameaccoutName根据accoutNohe来计算Accout的hashcode和判断equals
fOverridepublici
thashCoderetur
accoutNohashCodeOverridepublicboolea
equalsObjectobjifobj
ullobjgetClassAccoutclassAccouttargetAccoutobjretur
targetgetAccoutNoequalsaccoutNoretur
false
DrawThread类
javaviewplai
copy
取钱的线程类publicclassDrawThreadimpleme
tsRu
able模拟用户账户privateAccoutaccout当前取钱线程所希望取得值privatedoubledrawAmou
tpublicDrawThreadAccoutaccoutdoubledrawAmou
tsuperthisaccoutaccoutthisdrawAmou
tdrawAmou
t如果多个线程修改同一个共享数据时,会发生数据安全问题publicvoidru
账户余额大于取款金额时ifaccoutgetBala
cedrawAmou
t取款成功Systemoutpri
tl
Threadcurre
tThreadgetNameaccoutgetAccoutName
好听全球资料 返回顶部