1700457043
}
1700457044
1700457045
//传入皇帝名称,建立一个皇帝对象
1700457046
1700457047
private Emperor(String name){
1700457048
1700457049
nameList.add(name);
1700457050
1700457051
}
1700457052
1700457053
//随机获得一个皇帝对象
1700457054
1700457055
public static Emperor getInstance(){
1700457056
1700457057
Random random=new Random();
1700457058
1700457059
//随机拉出一个皇帝,只要是个精神领袖就成
1700457060
1700457061
countNumOfEmperor=random.nextInt(maxNumOfEmperor);
1700457062
1700457063
return emperorList.get(countNumOfEmperor);
1700457064
1700457065
}
1700457066
1700457067
//皇帝发话了
1700457068
1700457069
public static void say(){
1700457070
1700457071
System.out.println(nameList.get(countNumOfEmperor));
1700457072
1700457073
}
1700457074
1700457075
}
1700457076
1700457077
在Emperor中使用了两个ArrayList分别存储实例和实例变量。当然,如果考虑到线程安全问题可以使用Vector来代替。臣子参拜皇帝的过程如代码清单7-6所示。
1700457078
1700457079
代码清单7-6 臣子参拜皇帝的过程
1700457080
1700457081
public class Minister{
1700457082
1700457083
public static void main(String[]args){
1700457084
1700457085
//定义5个大臣
1700457086
1700457087
int ministerNum=5;
1700457088
1700457089
for(int i=0;i<ministerNum;i++){
1700457090
1700457091
Emperor emperor=Emperor.getInstance();
1700457092
[
上一页 ]
[ :1.700457043e+09 ]
[
下一页 ]