Java 中的接口使用初步

接口

接口实现和类继承的规则不同,为了数据的安全,继承时一个类只有一个直接父类,也就是单继承,但是一个类可以实现多个接口,接口弥补了类的不能多继承缺点,继承和接口的双重设计既保持了类的数据安全也变相实现了多继承。

Java接口本身没有任何实现,因为Java接口不涉及表象,而只描述public行为,所以Java接口比Java抽象类更抽象化。但是接口不是类,不能使用new运算符实例化一个接口。

一个使用实例

public class Im_test {
    public static void main(String []args)
    {
        CallAble t=new R_CallAble();
        t.call_a();
    }
}

interface CallAble{
    abstract void call_a();
}
class R_CallAble implements CallAble{
    public void call_a()//必须声明为public,否则会报错
    {
        System.out.println("Test!");
    }
}

如果一个类不是抽象类,那么他所继承的接口中的方法必须要全部实现
接口中可以有变量

interface CallAble{
    abstract void call_a();
    final int GOD=0;
    int t=10;
}

用于实现接口的类可以使用接口中的变量


接口的继承

接口可以像类一样继承 ,也是使用extends关键词

interface CallB extends CallAble{
    void call_b();
}

如果一个非抽象类要实现一个接口,那么他要实现所有的方法

class R_CallAble implements CallB{
    public void call_a()//必须声明为public,否则会报错
    {
        System.out.println("Test!");
    }
    public void call_b()
    {
        System.out.println(GOD);
    }
}

一个类可以实现多个接口

class R_CallAble implements CallB,CallC{
    public void call_a()//必须声明为public,否则会报错
    {
        System.out.println("Test!");
    }
    public void call_b()
    {
        System.out.println(GOD);
    }
    public void call_c()
    {
        System.out.println(CallC.t);
    }
}

接口的可见性


接口的访问控制只有public和默认两种
public 的只能定义在单独的java文件中,这是由于public类型的类或者接口在一个java文件中只能有一个
public类型的接口可以在任何代码中使用,默认的则只能在同一个包中使用。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值