java中的接口

Java中的接口( interface)

  1. 概述
    接口( interface) 技术, 主要用来描述类具有什么功能,而并不给出每个功能的具体实现。
    接口不是类,而是对类的一组需求描述,这些类要遵从接口描述的统一格式进行定义。
    接口的特点:
    (1)一个类可以实现( implement) 一个或多个接口。Java中 每个类只能扩展于一个类。
    (2)接口不是类,尤其不能使用 new 运算符实例化一个接口,却能声明接口的变量。
    (3)接口变量必须引用实现了接口的类对象。
    (4)接口中的所有方法自动地属于 public。 因此,在接口中声明方法时,不必提供关键字 public o。
    (5)与接口中的方法都自动地被设置为 public —样,接口中的变量将被自动设为 public static final。
    (6)可以用 instance 检查某对象是否实现了某个特定的接口: if (anObject instanceof Comparable) { . . . }。
    (7)接口也可以被扩展,与可以建立类的继承关系一样。
    (8)Java8中的新特性,为接口方法提供一个默认实现。 必须用 default 修饰符标记这样一个方法;如果实现类重写了该方法,就覆盖这个方法。接口中还可以有静态方法,可以通过接口名来访问静态方法。
  2. 接口的使用
    2.1 接口的简单使用
    关键字 interface声明一个接口,声明一个接口,IStudy.java如下所示:
    package interfaceStudy; public interface IStudy { public void study();}
    类使用implements 关键字去实现一个接口。
    package interfaceStudy;
    public class IStudyImpl implements IStudy {
    public static void main(String[] args) {
    IStudy iStudy = new IStudyImpl();
    iStudy.study();
    }
    @Override
    public void study() {
    System.out.println(“studying …”);
    }
    }

2.2 接口的继承
首先第一个接口,IStudy.java:
package interfaceStudy;
public interface IStudy{
public void learn();
public void study();}
第二个接口,IStudent接口,继承IStudy接口。
package interfaceStudy;
public interface IStudent extends IStudy
{
public void study();
public void play();
}

实现类需要重写IStudent接口中方法和IStudent接口继承IStudy接口的方法,如下三个方法,缺少会报错。
@Override
public void learn() {
System.out.println(“learning …”);
}
@Override
public void study() {
System.out.println(“studying …”);
}
@Override
public void play() {
System.out.println(“playing …”);
}

完整测试代码如下所示:
package interfaceStudy;
public class IStudentImpl implements IStudent {
public static void main(String[] args) {
IStudent iStudent = new IStudentImpl();
iStudent.play();
iStudent.study();
iStudent.learn(); }
@Override
public void learn() {
System.out.println(“learning …”);
}
@Override
public void study() {
System.out.println(“studying …”);
}
@Override public void play() {
System.out.println(“playing …”);
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值