回调函数

现在自学安卓三个月了,之前很长一段时间纠结于什么是回调函数、回调机制弄的一脸懵X。
于是乎今天为了彻底弄明白怎么回事,也下了点小功夫,同时也希望看过我这篇文章的,可以明白的更透彻一些。
网上举的那些例子我就不再赘述了,什么领导给下属安排任务,妈妈叫小明吃饭等等
回调用到了继承/接口、多态
这里我举的例子是什么呢?-------就叫做“**一千种死法**”吧

总共5个类,其实也就4个,有两个类基本上一样
1,接口DeadStyle_Interface;
2,子类Dead_a和Dead_b;
3,CallBack类
4,Main类

我先定义一个接口DeadStyle_Interface,代码如下:
public interface DeadStyle_Interface {

    public void deadStyle();

}

应该可以理解吧,先定义一个接口中的方法,让下面的两个子类去表示是咋死的。
下面我定义了两个类(两种死法),分别实现接口中的方法
第一种死法:豆腐砸死的

public class Dead_A implements DeadStyle_Interface{

    public void deadStyle() {
        System.out.println("豆腐砸死的");
    }

}

第二种死法:

public class Dead_B implements DeadStyle_Interface{

    public void deadStyle() {
        System.out.println("蛋疼死的");
    }

}
**到这里大家应该能明白吧,不明白的看看接口的知识(实现接口时,子类必须要实现接口中的所有方法,不要问我为啥,因为就是这样婶儿的!)**

然后,关键的地方来了请注意!定义下一个类CallBack,定义一个普通的方法,里面传进去接口的实例,有了实例才能调用方法对吧~(注意,假设类A是接口,不能A a = new A(); ,后面必须要实现抽象方法才行注意了——>方法体中传进去的参数,到最后那个Main类中就可替换成子类的对象!!!!然后就是运用了多态、多态、多态!!,父类构建,子类实现: 父类 实例 = new 子类();

public class CallBack {

    public static void oneThousandDead(DeadStyle_Interface interface_object){
        System.out.print("一千种死法之----->");
        interface_object.deadStyle();
    }
}

其实不用static也可以,我就懒了一下,类型.方法()直接省略了还得实例化过程

最后一步是这个Main类:

public class Main {
    public static void main(String args[]){
        CallBack.oneThousandDead(new Dead_A());
        CallBack.oneThousandDead(new Dead_B());
    }
}

看见了吗,分别传进去的是两个子类的实例,也就是说
父类 父类实例 = new 子类(); 很典型的多态
然后点击运行,输出:
这里写图片描述

同时在这里简单说一下,android开发中,毁掉函数特别的多,基本上onCreate()、onstart()、onClickListener()带”on“的基本上都属于回调函数

真心希望大家能看懂我的关于回调函数的这篇文章,可能有地方我写的有疏漏,也希望给予指点指教。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值