01.接口的概述

接口的概述

  • 接口是功能的集合,同样可看做是一种数据类型,是比抽象类更为抽象的”类”。
  • 接口只描述所应该具备的方法,并没有具体实现,具体的实现由接口的实现类(相当于接口的子类)来完成。这样将功能的定义与实现分离,优化了程序设计。

接口的格式&使用

接口的格式

  • 与定义类的class不同,接口定义时需要使用interface关键字。
  • 定义接口所在的仍为.java文件,虽然声明时使用的为interface关键字的编译后仍然会产生.class文件。这点可以让我们将接口看做是一种只包含了功能声明的特殊类。
    定义格式:
public interface 接口名 {
    抽象方法1;
    抽象方法2;
    抽象方法3;
}

接口的使用

  • 接口中的方法全是抽象方法,直接new接口来调用方法没有意义,Java也不允许这样干
  • 类与接口的关系为实现关系,即类实现接口。实现的动作类似继承,只是关键字不同,实现使用implements
  • 其他类(实现类)实现接口后,就相当于声明:”我应该具备这个接口中的功能”。实现类仍然需要重写方法以实现具体的功能。
    格式:
class 类 implements 接口 {
    重写接口中方法
} 

在类实现接口后,该类就会将接口中的抽象方法继承过来,此时该类需要重写该抽象方法,完成具体的逻辑。

package com.itheima_01;
/*
 * Java语言的继承是单一继承,一个子类只能有一个父类(一个儿子只能有一个亲爹)
 * Java语言给我们提供了一种机制,用于处理继承单一的局限性的,接口
 * 
 *   接口:接口是一个比抽象类还抽象的类,接口里所有的方法全是抽象方法,接口和类的关系不再是继承而是实现,implement
 *  interface
 * 
 * 格式:
 *  interface 接口名 {
 *  
 *  }
 */
public class InterFaceDemo {
    public static void main(String[] args) {
        BillGates gates = new BillGates();
        gates.code();
    }
}

class Boss {
    public void manage() {
        System.out.println("管理公司");
    }
}

class Programmer {
    public void code() {
        System.out.println("敲代码");
    }
}

//比尔盖茨
class BillGates extends Programmer {
    
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 设计模式概述 在学习面向对象七大设计原则时需要注意以下几点:a) 高内聚、低耦合和单一职能的“冲突”实际上,这两者...
    彦帧阅读 9,165评论 0 14
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,698评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,776评论 25 709
  • 阳光明媚,微风和煦,正是初秋的温度。纯黑的T恤外套着蓝色圆领长袖,下身着深蓝收腿牛仔裤,保暖舒适。 坐在紧贴窗台的...
    心急火燎阅读 1,378评论 0 0
  • 1 现在已经是大年初一的凌晨,春节晚会已经开始重播。 除夕晚上电视一直开着,但眼睛却盯着群里的红包,所以春晚只听起...
    孙小青阅读 4,158评论 7 5