先有鸡还是蛋?
如果每一个鸡蛋都从鸡身上得到了这个问题的秘密答案,那又会怎样呢?
package chicken; public class Egg { final Object first; public Egg(Chicken mom) { first = mom.first; } }
|
如果这样,每只鸡也都从鸡蛋中得到了答案,并将其代代相传。那么我们也可以问问任何一只鸡!
package chicken; public class Chicken { final Object first; public Chicken(Egg egg) { first = egg.first; } public void ask() { // The goal is to reach this line System.out.println("First there was the " + first); } }
|
现在您需要弄清楚的是如何创建蛋生鸡鸡生蛋这个问题。
这是天真的尝试,会引发NullPointerException。您可以对其进行编辑以使其起作用吗?
package creator; import chicken.Chicken; public class Creator { public static void main(String args) { new Chicken(null).ask(); } }
|
与通常应用的规则和系统相同:必须在启用安全管理器的情况下运行(-djava.security.manager)。您的解决方案必须在creator包中。