我想使用Java注释来插入代码(方法调用等)。我们说我有这样的代码:
ActionBar bar = getActionBar();
assert bar != null;
bar.setIcon(android.R.color.transparent);
EventBus.getDefault().register(this);
checkGPS();
此代码出现在我的每个Activity类中。而不是每次我想要这样的东西写它:@PrepareActivity
将扩展代码。在C或C ++中,我可以简单地使用#define PrepareActivity \ ...
。我可以用Java注释编写相同的内容吗?怎么做?感谢。
答案 0 :(得分:4)
我从这篇this帖子的答案中收集到的内容,似乎没有标准的方法来做你想做的事情。有可能使用面向方面的编程,或者链接的帖子中的答案可以帮助吗?
Project Lombok做了类似的事情,他们解释了他们的技巧here
答案 1 :(得分:3)
注释并不意味着更改代码。有一些特殊的Java编译器(例如Projekt Lombok)可以修改这些规则。
但你不需要任何花哨的东西。只需让类实现一个包含getActionBar()
和checkGPS()
的接口,然后就可以编写一个静态辅助方法:
public static void prepare( IThing thing ) {
ActionBar bar = thing.getActionBar();
assert bar != null;
bar.setIcon(android.R.color.transparent);
EventBus.getDefault().register(this);
thing.checkGPS();
}