js回调函数的利用,简单大方,在java中声明回调函数感觉会创建一大堆代码,最便捷的方案是什么?
最便捷的方案是用一个好的IDE。
创建一大堆代码是Java本身的特点所造就的,Java程序没有JavaScript那么精简小巧,但这也是Java性能优异的来源。脚本语言利用解析执行程序能够实现很多绚丽的语法糖,可以几行代码实现高级语言几十行代码才能完成的工作。你在Java里,其实就是把原来由脚本语言解析器完成的工作,自己用代码完成了而已。
在Java里,做的是严谨编程,这段代码最好是不要省略的,所以我推荐你用IDE帮助你自动输入这段代码。
当然,你也可以采用Java的新特性,Lambda表达式。
java中方法和变量是有明确区别的,这也意外着你在创建回调函数的时候必须依赖接口和接口方法
接口是必须依赖, 不过不是一定要自己声明接口
Android中本身就有一堆接口, 例如
Runnable
, 点击事件接口等等, 只要这些接口能满足你的需要, 你可以直接使用, 不用自己声明新的接口了.
另外接口最大的意义是在代码结构层面上的, 一定程度上解耦调用接口的类和被调用的接口实现, 这意味着需求改变的时候只需要改接口的实现而不需要改使用接口的类, 如果你的项目是长期维护的话, 以后你就会觉得幸亏有这一大堆代码了.
不一定要用接口啊,java中回调写得这么麻烦无非就是因为不支持方法参数,所以方法参数用类,类再调用方法来实现,接口不是必须的,随手写一个吧:
public class Test1 {
public void method1(Test2 test2){
test2.method2(this);
}
public void showName(){
System.out.println("test1");
}
public static void main(String[] args) {
new Test1().method1(new Test2());
}
}
class Test2{
public void method2(Test1 test1){
test1.showName();
}
}