当前位置: 首页 > news >正文

JavaSE 学习参考:接口

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

006zipb5zy79y1AhcDy5c&690

接口是Java中定义程序的功能一种类型。在接口中只定义抽象方法和常量,接口是面向功能的,是没有实例的,只有类实现接口,才有意义。

一个类实现了某个接口,就意谓着该类的对象具有接口描述的功能,所以从另外一个方面说,接口是对具有某引起功能的类的规范。

与抽象类不同的是类是面向数据的,子类继承父类,说明子类和父类具有相同数据特征。一个子类只继承一个父类却可实现多个接口。子类实现接口后和继承抽象类方法一样,要么实现接口定义的全部抽象方法,要么部分实现或未实现接口中的抽象方法成为一个抽象类。

定义抽象的关键字是interface,定义常量的public final static 是可选的,定义抽象的public abstract也是可选,即使没有显式添加编译时会加上。

 *

abstract interface SwitchAble {

 

int STATE_OPENED=0;

int STATE_CLOED=0;

 

public void close();

public void open();

}

 class TV implements SwitchAble{

 

 

@Override

public void close() {

System.out.println("电视关闭了");

}

 

@Override

public void open() {

System.out.println("电视打开了");

}

 }

 class Fan implements SwitchAble{

 

 

@Override

public void close() {

System.out.println("电风扇关闭了");

}

 

@Override

public void open() {

System.out.println("电风扇打开了");

}

 }

public class Demo1 {

public static void main(String[] args) {

          TV tv=new TV();

          Fan fan=new Fan();

          tv.open();

          fan.open();

          tv.close();

          fan.close();

}

}

运行程序,结果如下图所示:

006zipb5zy79y1ARJEC02&690 

 

 

转载于:https://my.oschina.net/u/2971691/blog/860638

相关文章:

  • CISCO路由器配置基础3
  • Photoshop中消失点(Photoshop帮助文档)
  • Selenium2+Python--等待页面元素加载(wait)
  • Swift 数据类型
  • 服务台的工作流程
  • 【深度分解】听趣拍云产品经理剖析视频基础知识(1)
  • windows server 2003 FTP服务器不能下载原因
  • 上火了
  • 干货:让你分分钟学会 JS 闭包
  • jeffcroft/html5 Two thousand twenty two
  • 11种QQ技术 ,让你成为QQ高手
  • springmvc 导出excel
  • iPad是代替笔记本和手机?还是活在夹缝中间?
  • Bing Maps进阶系列九:使用MapCruncher进行地图切片并集成进Bing Maps
  • linux 一些实用工具整理(定期更新)
  • [译]CSS 居中(Center)方法大合集
  • Apache的80端口被占用以及访问时报错403
  • Python3爬取英雄联盟英雄皮肤大图
  • Spring Boot快速入门(一):Hello Spring Boot
  • Webpack 4x 之路 ( 四 )
  • 解决jsp引用其他项目时出现的 cannot be resolved to a type错误
  • 中国人寿如何基于容器搭建金融PaaS云平台
  • 最近的计划
  • #if #elif #endif
  • #pragma once与条件编译
  • #大学#套接字
  • #我与Java虚拟机的故事#连载19:等我技术变强了,我会去看你的 ​
  • (C#)Windows Shell 外壳编程系列4 - 上下文菜单(iContextMenu)(二)嵌入菜单和执行命令...
  • (js)循环条件满足时终止循环
  • (ZT)一个美国文科博士的YardLife
  • (附源码)springboot“微印象”在线打印预约系统 毕业设计 061642
  • (七)Java对象在Hibernate持久化层的状态
  • (转)Linux NTP配置详解 (Network Time Protocol)
  • .NET CF命令行调试器MDbg入门(一)
  • .NET Conf 2023 回顾 – 庆祝社区、创新和 .NET 8 的发布
  • .net FrameWork简介,数组,枚举
  • .NET 读取 JSON格式的数据
  • .NET多线程执行函数
  • .NET设计模式(2):单件模式(Singleton Pattern)
  • @Async注解的坑,小心
  • @data注解_SpringBoot 使用WebSocket打造在线聊天室(基于注解)
  • @RequestBody与@ResponseBody的使用
  • [ IO.File ] FileSystemWatcher
  • [ vulhub漏洞复现篇 ] GhostScript 沙箱绕过(任意命令执行)漏洞CVE-2019-6116
  • [android] 手机卫士黑名单功能(ListView优化)
  • [C++] 多线程编程-thread::yield()-sleep_for()
  • [ComfyUI进阶教程] animatediff视频提示词书写要点
  • [Geek Challenge 2023] web题解
  • [go 反射] 进阶
  • [Gradle] 在 Eclipse 下利用 gradle 构建系统
  • [halcon案例2] 足球场的提取和射影变换
  • [HUBUCTF 2022 新生赛]
  • [NowCoder]牛客OI周赛3
  • [PHP] 代码重用与函数
  • [Python GUI PyQt] PyQt5快速入门