【发布时间】:2017-03-19 21:08:24
【问题描述】:
上课:
class Test {
Object1 object1;
Object2 object2;
void setObject2 (Object2 newObject) {
if (object1.someMethod()) {
this.object2 = newObject;
} else {
someOtherMethod();
}
}
}
如何强制object1 必须在object2 之前实例化的对象实例化?
现在我可以想办法解决它
1.通过以Object2为参数的构造函数并在那里实例化它
Test(Object1 object1) {
this.object1 = object1;
}
2.通过尝试设置object2的方法抛出异常
void setObject2 (Object newObject) {
if (object1 == null) {
throw new Exception();
}
...
还有其他更合适的方式来实现吗?
我需要它的原因是我必须为区域object1 创建新的广告活动Test 来宣传该区域的一些网站object2。在我可以将网站添加到广告系列之前,我想检查该网站是否属于该地区。
【问题讨论】:
-
请问你的目的是什么?
-
@acornagl 你在问我吗?
-
@ItamarGreen 不,很抱歉我要问 Marcin,但
@出了点问题 -
@acornagl 我必须为一个地区创建新的广告活动来宣传该地区的一些网站。在将网站添加到广告系列之前,我想检查该网站是否属于该地区。
-
@MarcinKruglik 我明白了。
标签: java oop instance-variables