UnitContext API

<span style="font-size:24px;">class UnitContext
此类代表当做一个场景使用的单元的集合。此些单元都可以看做是场景。此类是FlatLinguist的内部类
本类的属性:
private static final Cache<UnitContext> unitContextCache = new Cache<UnitContext>();存储单元场景对象的缓存对象,此属性用来缓存UnitContext对象。注意只要存在此类对象,则此单元场景缓存中会存在空单元场景和静音单元场景对象。
private final Unit[] context;表示场景的那些单元,即单元数组。
private int hashCode = 12;初始hashcode值
public final static UnitContext EMPTY = new UnitContext(Unit.EMPTY_ARRAY);创建一个空单元的单元场景对象。
public final static UnitContext SILENCE = new UnitContext(new Unit[] { UnitManager.SILENCE });创建一个静音单元的单元场景
静态块:
static {
        unitContextCache.cache(EMPTY);
        unitContextCache.cache(SILENCE);
    }往单元场景缓存中存入空单元场景和静音单元场景对象。

本类的构造方法:
private UnitContext(Unit[] context);私有构造方法,为给定的场景创建一个单元场景对象。此方法需被工厂方法使用才能创建对象。Context此UnitContext对象的单元数组。在此方法中计算了hashcode属性。
本类的方法:
static UnitContext get(Unit[] units);为给定的单元得到单元场景对象。在这每一个单元组合都有一个单独的单元场景UnitContext。输入参数:units为感兴趣的单元。在如果在单元场景缓存中存在着此单元的单元场景则返回此单元场景,否则就是此单元的单元场景对象。并把此单元场景对象存入缓存中。
public Unit[] getUnits();获得代表此场景的单元即此单元场景的单元。
public boolean equals(Object o);决定给定的对象是否等于此单元场景对象。输入参数:o为要比较的对象。要比较其单元是否都相等,都相等则返回为true。即单元场景的单元数组中的所有单元。
public int hashCode();获得在构造方法赋值的hashcode属性值。
public static void dumpInfo();打印出此单元场景的缓存的相关信息。
public String toString();此对象的字符串表示。</span>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值