1700484350
1700484351
//左右两个规格书
1700484352
1700484353
private ISpecification left;
1700484354
1700484355
private ISpecification right;
1700484356
1700484357
public OrSpecification(ISpecification_left,ISpecification_right){
1700484358
1700484359
this.left=_left;
1700484360
1700484361
this.right=_right;
1700484362
1700484363
}
1700484364
1700484365
//or运算
1700484366
1700484367
@Override
1700484368
1700484369
public boolean isSatisfiedBy(Object candidate){
1700484370
1700484371
return left.isSatisfiedBy(candidate)||right.isSatisfiedBy(candidate);
1700484372
1700484373
}
1700484374
1700484375
}
1700484376
1700484377
代码清单37-26 非规格书
1700484378
1700484379
public class NotSpecification extends CompositeSpecification{
1700484380
1700484381
//传递一个规格书
1700484382
1700484383
private ISpecification spec;
1700484384
1700484385
public NotSpecification(ISpecification_spec){
1700484386
1700484387
this.spec=_spec;
1700484388
1700484389
}
1700484390
1700484391
//not操作
1700484392
1700484393
@Override
1700484394
1700484395
public boolean isSatisfiedBy(Object candidate){
1700484396
1700484397
return!spec.isSatisfiedBy(candidate);
1700484398
1700484399
}
[
上一页 ]
[ :1.70048435e+09 ]
[
下一页 ]