接口(interface)
一、前言
面向接口编程,抽象方法是模板,接口是规范
二、接口的基本内容:
interface IFather{
//静态常量 可以省略static和final关键字
public static final String NAME = "张三";
//抽象方法 可以省略abstract关键字
public void eat();
/*
* 在JDK1.8中新增的静态方法
* */
public static void sleep(){
System.out.println("sleep....");
}
/*
* 在JDK1.8中之后可以在接口中声明default方法
* */
default void run(){
System.out.println("run....");
}
}
三、接口和抽象类的区别?
比较点 | 抽象类 | 接口 |
---|---|---|
定义 | 用abstract关键字来修饰的类 | interfaec关键字来修饰 |
组成 | 抽象方法、普通方法、构造方法、成员变量、常量 | 抽象方法、静态常量、JDK1.8注释 |
使用 | 子类继承(extends) | 实现类实现(implements) |
关系 | 抽象类可以实现接口 | 接口是不能继承抽象类的 |
对象 | 都是通过对象的多态实现的 | 都是通过对象的多态实现的 |
局限 | 不能多继承,不能实例化 | 可以多继承,不能实例化 |
选择 | 建议选择接口,避免单继承 | 建议选择接口,避免单继承 |
实际 | 模板 | 标准 |
本文来自博客园,作者:news_one,转载请注明原文链接:https://www.cnblogs.com/new-one/p/17833617.html
分类:
Java
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律