私有字符串bingType
公共Bing(字符串Bing類型)
{
this . bing type = bing type;
}
公共字符串getType()
{
返回bingType
}
抽象void atract();
}
類冰淇擴展冰{
公共冰淇(字符串bingType) {
超級(bing type);
}
@覆蓋
void atract() {
系統。out.println(這個。gettype ()+“騎馬持刀砍人”);
}
}
類構建擴展Bing{
公共建築(字符串類型){
超級(bing type);
}
@覆蓋
void atract() {
系統。out.println (this.gettype ()+"用刀砍人");
}
}
類弓兵擴展冰{
公共弓兵(字符串bingType) {
超級(bing type);
}
@覆蓋
void atract() {
系統。out.println (this.gettype ()+"用劍射人");
}
}
接口信號{
public void send signal();
}
級局管擴兵器信號{
公共劇管(串並式){
超級(bing type);
}
@覆蓋
公共void SendSignal() {
System.out.println("軍官開始發送攻擊信號");
}
@覆蓋
void atract() {
}
}
2.
導入Java . util . ArrayList;
導入Java . util . iterator;
導入Java . util . list;
張達級
列表& ltBing & gtlist = new ArrayList & ltBing & gt();
公共空添加(兵兵)
{
list . add(bing);
}
公共空顯示()
{
叠代器& ltBing & gtiterator = list . iterator();
while(iterator.hasNext())
{
iterator.next()。atract();
}
}
}
公共類文本{
公共靜態void main(String[] args) {
張達張達=新張達();
聚官聚官=新聚官(“官”);
bing b 1 =新冰淇("騎兵");
Bing b2 =新冰淇(“騎兵”);
Bing b3 =新冰淇(“騎兵”);
Bing b4=new BuiBing(“步兵”);
Bing b5 = new BuiBing(“步兵”);
Bing b6=new BuiBing(“步兵”);
冰b7 =新弓兵(“弓箭手”);
冰b8 =新弓兵(“弓箭手”);
Bing b9 =新弓兵(“阿徹”);
bing b 10 =新弓兵(“弓箭手”);
dazhang . addsibing(b 1);
dazhang . addsibing(B2);
dazhang . addsibing(B3);
dazhang . addsibing(B4);
dazhang . addsibing(b5);
dazhang . addsibing(B6);
dazhang . addsibing(B7);
dazhang . addsibing(b8);
dazhang . addsibing(B9);
dazhang . addsibing(b 10);
巨冠。send signal();
dazhang . display();
}
}
3.顯示的結果: