Java 面向对象 之 接口 interface
http://www.verejava.com/?id=16992815279749
/** 知识点: 接口 interface (重点中的重点) 面向接口的编程 接口的定义: 接口就是一个约定 题目: 主席说要建立和谐社会,温家宝说要为人民服务 思路: 1. 抽象出类: 主席(ChairMan), 省长(Governer) 2. 找出关系: 各省省长传达并实现 主席讲话方针 */ /** 注意: 1. 声明一个接口关键字为 interface 2. 接口中不允许定义方法的实现,只能是声明, 跟抽象类有所不同, 抽象类是 允许定义具体方法的. 所以接口有的时候也称为特殊的抽象类 3. 接口中方法的声明可以省略关键字 abstract ,抽象类中的抽象方法不能省略 4. 接口中方法默认都是public 的 5. 接口中的属性都是静态常量 static final 关键字可以省略,接口中属性默认 是public 的并且可以省略public ,不允许有private,protected 关键字修饰 6. 实现接口的类用关键字 implements 7. 实现类中必须 实现接口中的所有声明方法, 跟抽象类一样 8. 不能实例化接口, 必须有其实现类间接实例化, 跟抽象类一样 9. 如果要实现多个接口用, 隔开, 并且实现类要实现所有接口的方法, 而 抽象类不能多继承 10. 接口可以继承多个接口, 抽象类不行(这个就是为什么流行用面向接口编程的原因) 11. 类可以同时继承一个类和实现多个接口 */ public class TestInterface { public static void main(String[] args) { //输出主席名称 System.out.println(ChairMan.name); //实例化接口 //ChairMan chair=new ChairMan(); System.out.println("开各省大会了..."); Governer g1 = new Governer("北京市市长"); g1.buildHarmonyCommunity("教育"); g1.serviceForPeople("慈善"); Governer g2 = new Governer("河北省省长"); g2.buildHarmonyCommunity("联谊晚会"); g2.serviceForPeople("尊老爱幼"); g2.service(); } } interface ChairMan { String name = "主席"; //声明要建立和谐社会 public void buildHarmonyCommunity(String method); } interface PrimeMinister { String name = "总理"; //声明为人民服务 public void serviceForPeople(String method); } interface Leader extends ChairMan, PrimeMinister { } class LeiFeng { public void service() { System.out.println("全心全意为人民服务"); } } class Governer extends LeiFeng implements Leader { private String name;//省长名 public Governer(String name) { this.name = name; } //实现主席建立和谐社会的方针 public void buildHarmonyCommunity(String method) { System.out.println(name + " 我们是通过 " + method + " 来实现和谐社会"); } //实现总理为人民服务的方针 public void serviceForPeople(String method) { System.out.println(name + " 我们是通过 " + method + " 来为人民服务的"); } public String getName() { return this.name; } }

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
[雪峰磁针石博客]软件测试专家工具包2性能测试
Locust(推荐) 了解服务器端性能的好工具。 语言python3。源码 python3+ python2.7+ github上star和fork最多的性能测试工具。 Locust是易于使用、分布式的用户负载测试工具。用于网站(或其他系统)的负载测试,计算出系统可以处理并发用户数。 测试时大量蝗虫会攻击你的网站。每只蝗虫(或叫测试用户)可以自定义、测试过程由web界面实时监控。这能帮助测试并确定瓶颈。 Locust 完全基于的事件,单机可以支持数千用户。它不使用回调,而是基于轻量进程gevent, 能简单地实线各种场景。 Multi-Mechanize(推荐) Multi-Mechanize 是一个开源的性能和负载测试框架,它并发运行多个 Python 脚本对网站或者服务生成负载(组合事务)。测试输出报告保存为HTML或JMeter的兼容的XML。Multi-Mechanize最常用于web性能 和可扩展性(scalability)测试,也适用于任何python可以访问的API。尤其适合后台性能测试。稍微懂点编程的话,这个工具会远强过商业 的性能测试工具。 主要特性: 支持各种 HT...
- 下一篇
Java 面向对象 之 接口 火车票实例
http://www.verejava.com/?id=16992821172850 /** 接口的实际应用: 题目: 两个人A,B开发一个火车票显示功能A负责客户端, B负责服务器端 思路: 1. 抽象出类: 1.1 客户端显示类(Terminal) 1.2 服务器端服务类(TrainService) 1.3 火车票(Ticket) 2. 找出类关系: 2.1 客户端 调用 服务器端 的获取火车票信息显示 TrainService -> Terminal(调用) 2.2 服务器端 提供 火车票信息 给 客户端 Ticket->TrainService(多对1) Ticket -> Terminal(多对多) 3. 找出类属性: 3.1 Ticket(车次,出发地,到达地,票价) 3.2 TrainService(火车站名称) 3.3 Terminal(代售点名称) 4. 找出类方法: 4.1 TrainService: 提供火车票信息 Ticket[] getTickets() 4.2 Terminal: 显示火车票信息 display() */ import ja...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Windows10,CentOS7,CentOS8安装Nodejs环境
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS6,CentOS7官方镜像安装Oracle11G
- Red5直播服务器,属于Java语言的直播服务器
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- SpringBoot2整合Thymeleaf,官方推荐html解决方案