接口回调 and 注解

目录

一、接口回调

二、注解


一、接口回调

在C、C++、JavaScript等很多语言中,存在”函数回调“这个用法,具体操作是可以把一个函数(比如函数A)作为实参向另一个函数(比如函数B)传递,此时函数B中就可以直接调用函数A了

 

  在Java中,函数需要存在与某个对象之中,一个函数如果需要被别人带哦用,那就需要确定函数的返回值类型、函数名、形参列表、抛出的异常等,使用接口就可以规定这些,Java中通过“接口回调”来实现“函数回调”的方法

二、注解

注解可以用来修饰程序元素(方法、类、成员属性、参数等等),起到标记的作用,之后其他代码就可以为这些程序元素添加额外的功能

一个程序元素可以被多个注解修饰(修饰是没有顺序的),但是一个注解只能修饰一个程序元素。注解是有属性的,其中有个特殊的属性叫做value,直接往注解里传递的值,是它的value属性。

 //eg:假设存在注解@Template1、@Template2,且它们可以修饰所有的程序元素
@Template2
@Template1
//注释不影响当前这个A类是被Template2和Template1两个注解修饰的
public class A{
    @Template1
    private String name; //name上有@Template1修饰
    @Template1
    private Integer age; //age上有@Template1修饰
    private B b; //b上没有注解修饰
    
    @TestA("a") //字符串"a"会被传递到TestA的value属性中,只有value属性不需要写属性名
    private String test;
    
    @TestA(foo = "t") //传递其他属性到注解TestA中,需要属性名=属性值
    private Integer aaa;
    
    @TestA(value="aa", foo="22") //如果需要同时传递value和别的属性,value也需要写属性名
    private Integer aa;
}
public @interface TestA{
    //注解的属性,写成函数形式,函数的返回值相当于属性的类型,default后是这个属性的默认值
    String value() default "";
    String foo() default "";
}

//mybatis中@Param的用法:
@Param("page") //代表字符串"page"会被传递到Param注解的value属性中

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值