讲师回答 / Arthur
哈哈,我用的是Maven。不过没关系,我的项目并没有用到Maven的任何东西。我仅仅是用了而已,你完全可以不用,建立Java project一样可以的哈。
2014-08-20
讲师回答 / Arthur
这里你不妨继续深入一下, 考虑如下场景:通过询问的方式来决定是否加入调料。比如,通过在命令行显示“是否加入调料?(Y/N)", 等待用户的反馈。然后返回true或false。然后你会发现子类对算法的实现具有了更大的灵活性,你的子类可以应对不用的场景,用户想喝茶,是否加入调料都可以轻松满足。正所谓加或不加,茶就在那里,不多不少。总之,通过钩子函数我们合理的扩展了算法的使用场景,提升了代码弹性和可复用性,这就是我们使用模式的终极目的。
2014-08-17
讲师回答 / Arthur
如果我没理解错的话,你说的类属性是static属性。那么结论肯定是不行的啦,类属性对所有子类都产生影响,这样程序就失去弹性了。如果是实例属性可以吗?答案是可以的,但是如果这么用说明你还没理解钩子函数的作用。通过覆写钩子函数,子类对算法的实现具有了更大的灵活性,你的子类可以应对不用的场景,提升了代码弹性和可复用性。
2014-08-03