Java回调学习

来源:互联网 发布:淘宝电商运营 编辑:程序博客网 时间:2024/05/24 04:30

Java的回调,又名Callback或者hook,前提应用的是Java的多态

小例子:

class Animals{     void bark(){         System.out.println("叫声");     }}class   Dog  extends Animals{    void bark(){        System.out.println("汪汪汪");    }}public class Callback {    public void interestingBark(Animals a){        System.out.println("有很多种动物");        System.out.println("它们有不同的叫声");        //叫声        a.bark();        System.out.println("很有趣吧!");    }    public static void main(String[] args) {        Callback call=new Callback();        call.interestingBark(new Dog());    }}

输出:

有很多种动物它们有不同的叫声汪汪汪很有趣吧!

优化:

  • 可以将父类改成抽象类,强制方法重写
  • 也可以通过实现接口来实现强制方法重写

总结:

  • 多态在方法体内的实现