📄 composite.java
字号:
package com.javapatterns.visitor.inventory;
import java.util.Vector;
abstract class Composite extends Equipment
{
/**
* @directed
* @link aggregation
* @clientCardinality 1
*/
private Vector parts = new Vector(10);
public Composite()
{
}
public void add(Equipment equip)
{
parts.add(equip);
}
public double price()
{
double total=0;
for (int i=0; i < parts.size(); i++)
{
total += ((Equipment) parts.get(i)).price();
}
return total;
}
public void accept(Visitor v)
{
for (int i=0; i < parts.size(); i++)
{
((Equipment) parts.get(i)).accept(v);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -