桌上有一個空盤子,只容許放一個水果。爸爸能夠向盤中放蘋果,也能夠向盤中放桔子,兒子專等吃盤中的桔子,女兒專等吃盤中的蘋果。規定當盤空時,一次只能放一隻水果。
下面是程序的具體實現代碼,在寫這個程序的時候,有點小問題,糾結了很長時間,因而在csdn論壇上發表帖子終於獲得瞭解決html
先說說涉及到的類的做用,首先Fruits做爲一個水果的父類,Apple和Orange是Fruits類的擴展類。CriticalResources類是臨界資源類,做爲緩衝區用,裏面封裝了數組大小爲一的Fruits數組,能夠當作「盤子」;ProducerOrange爲生產橘子的類 ProducerApple爲生產桔子的類 ConsumerApple(消費蘋果的類) ConsumerOrange(消費桔子的類)java
水果類代碼以下編程
下面是做爲緩衝區盤子的代碼數組
下面是生產桔子和消費桔子的代碼app
下面是生產蘋果核消費蘋果的代碼ide
客戶端代碼post
運行結果:ui