[Java] java中的接口定义
在Java的通常规范中,对数据成员的修改要通过接口提供的方法进行(如下面示例中接口中的void learnMath(int hours)和void learnEnglish(int hours)),这个规范起到了保护数据的作用。用户不能直接修改数据,必须通过相应的方法才能读取和写入数据。类的设计者可以在接口方法中加入数据的使用规范。
在interface中,我们
- 不需要定义方法的主体
- 不需要说明方法的可见性
一个类的public方法构成了接口,所以interface中的方法默认为public。我们用implements关键字来实施interface。一旦在类中实施了某个interface,必须在该类中定义interface的所有方法(learnMath(int hours)和 learnEnglish(int hours))。类中的方法需要与interface中的方法原型相符。否则,Java将报错。
另外,一个类可以实施不止一个的interface。
1 public class Test{ 2 public static void main(String[] args){ 3 LearnCourse learnCourse = new LearnCourse(3); 4 learnCourse.learnMath(2); 5 learnCourse.learnEnglish(4); 6 } 7 } 8 class LearnCourse implements Learn{ 9 LearnCourse(int t){ 10 11 } 12 public void learnMath(int hours){ 13 this.timeMath = hours; 14 System.out.println("The time for Learning Math is "+hours+" hours"); 15 } 16 public void learnEnglish(int hours){ 17 this.timeEnglish = hours; 18 System.out.println("The time for Learning English is "+hours+" hours"); 19 } 20 private int timeMath = 0; 21 private int timeEnglish = 0; 22 } 23 interface Learn{ 24 void learnMath(int hours); 25 void learnEnglish(int hours); 26 }
转载于:https://www.cnblogs.com/frost-yen/p/4755333.html
[Java] java中的接口定义相关推荐
- Java语言中的接口与实现
Java语言中的接口与实现 文章目录 Java语言中的接口与实现 一.实验目的: 二.实验要求: 三.提示: 四.实验小结: 一.实验目的: 1.掌握接口的设计过程: 2.理解接口中成员变量的访问权限 ...
- 接口隔离原则——举例说明Java设计模式中的接口隔离原则
举例说明Java设计模式中的接口隔离原则 一.举例说明 1.反例 (1)类图说明 (2)代码说明 (3)测试 (4)分析缺点(总结) 2.正例 (1)类图说明 (2)代码说明 (3)测试 (4)方案评 ...
- JAVA设计一个电视机类_漫谈Java程序设计中的接口应用
Java语言提供了一种接口(interface)机制.这种接口机制使Java的面向对象编程变得更加灵活.我们可以用接口来定义一个类的表现形式,但接口不能包含任何实现.在<Thinking in ...
- java项目中常量规范定义的思考
大言不惭,则无必为之志.--<论语·宪问> 1.引言 最近在看老大在项目中写的代码,发现在系统常量的定义上,与我之前在开发项目的定义有些不一样,引发了我对系统变量如何规范定义和每一种定义有 ...
- java 方法中定义类_在Java方法中使用类定义
小编典典 这称为本地课程. 2很简单:是的,将生成一个类文件. 1和3是同一个问题.你可以使用本地类,而无需使用一种方法来实例化一个本地类,也无需在任何地方知道实现细节. 典型的用途是创建某些接口的一 ...
- java interface_Java中的接口(interface)
Java中提倡面向接口编程,而不是面向类编程,个人理解就是将做什么和怎么做分开,以实现松耦合的目的. 基本数据类型分四类八种 : 整型.浮点型.字符型.布尔型: 引用数据类型分三种 : 类 . 接口 ...
- Java开发中模拟接口工具moco的使用
场景 在开发中需要依赖一些接口,比如需要请求一个返回Json数据的接口,但是返回Json数据的接口要么是没搭建,要么是交互比较复杂. 此时,就可以使用moco来模拟接口返回接口数据,以便开发和测试工作 ...
- java文件下载中Content-disposition的定义
Content-disposition 是 MIME 协议的扩展,MIME 协议指示 MIME 用户代理如何显示附加的文件.当 Internet Explorer 接收到头时,它会激活文件下载对话框, ...
- java中接口文件创建_功能接口简介–在Java 8中重新创建的概念
java中接口文件创建 世界各地的所有Java开发人员都将至少使用以下接口之一:java.lang.Runnable,java.awt.event.ActionListener,java.util.C ...
最新文章
- 数据库--循环语句:loop exit when/ end loop
- 计算机网络知识点4——计算机网络性能
- 2018智能反欺诈洞察报告:黑中介、黑产智能化趋势明显
- oracle19c怎么创建Scott,Oracle db-sample-schema-19c安装(scott hr oe pm ix sh bi用户创建部署)...
- Convert Windows 32bit dirver to Windows 64bit
- dbnetlib sqlserver不存在或拒绝访问_部署IIS+PHP+SQL server环境
- oracle如何查询排行第二,Oracle优化查询改写(第二章-给查询结果排序)
- HDU 2017 一系列统计数据
- 红帽Linux平台下安装Code::Blocks
- centos7磁盘分区格式化
- Android脱壳工具整理
- python调用 微信,向好友发送微博热搜榜
- ProxySQL+MGR实现读写分离和主节点故障无感知切换 - 完整操作记录
- 关于keil-C51中code、idata以及xdata
- 文心日签 | 春来有象,开工大吉
- AndroidStudio|读取SD卡中的sqlite数据
- 360极速浏览器显示密码
- [原创]使用FleaPHP框架构建简单留言本应用
- 【Android】精通Android UI设计
- 小程序服务器域名和业务域名的总结和配置
热门文章
- int size java_int size()
- 服务器:浅谈 Nginx 性能调优,太实用了!
- Linux下部署Tomcat项目笔记
- Git基础: .git 目录详解
- webrender 查看是否开启_想要体验极致顺滑的网页加载体验?手动开启Firefox WebRender渲染引擎...
- myeclipse深色模式_完善深色模式的调色板
- 如何忽略证书继续访问_前5个最容易被忽视的可访问性问题
- Kali安装magescan评估工具
- 用imageMagick的composite合并图片
- [原创]FineUI秘密花园(二十七) — 窗体控件概述(上)