package com.test;

 interface USB{  //创建一个USB接口,所有的操作要按照这个标准来工作
void start();//默认为public
void stop();
} class Computer{ // 定义一个电脑类,并且传入的接口为USB
public static void work(USB u){
u.start();
System.out.println("工作中");
u.stop();
}
} class USBDisk implements USB{//u盘扩展自USB接口,实现自己的需求 @Override
public void start() {
System.out.println("U盘开始工作");
} @Override
public void stop() {
System.out.println("U盘停止工作");
} } class Printer implements USB{//打印机扩展自USB接口,实现自己的需求 @Override
public void start() {
System.out.println("打印机开始工作");
} @Override
public void stop() {
System.out.println("打印机停止工作"); } }
public class interdetail { public static void main(String[] args) {
Computer.work(new USBDisk());//u盘想要在电脑工作,传入USBDisk()
Computer.work(new Printer());//打印机想要在电脑工作,传入USBDisk()
} }

运行结果:

 U盘开始工作
工作中
U盘停止工作
打印机开始工作
工作中
打印机停止工作

java_接口的应用的更多相关文章

  1. java_接口和抽象类的区别

    1. 接口只能定义抽象方法,不包含已经提供实现的方法. 抽象类可以包含普通方法 2. 接口不能定义静态方法.抽象类可以定义静态方法 3. 接口里只能定义静态常量filed,不能定义普通filed. 抽 ...

  2. Java_接口与抽象类

    接口: 接口,英文interface,在java中,泛指供别人调用的方法或函数.接口是对行为的一种抽象. 语法: [public] interface InterfaceName{} 注意: 1)接口 ...

  3. JAVA_接口_默认方法&静态方法

    1.小结(注意): 1.接口中无法定义成员变量,但是可以定义常量,其值不可以改变,默认使用public static final修饰 2.接口中,没有构造方法,不能创建对象 3.接口中,没有静态代码块 ...

  4. Java_接口

    接口 接口中的方法全都是抽象方法,用来指定一些规则,让子类去重写.接口的作用主要体现在一下两点 1.指定规则2.利用这些规则给类做功能扩展 接口的定义和使用 接口使用interface关键字来定义,使 ...

  5. Java_接口回调与匿名内部类

    匿名内部类 警告:匿名内部类本质上是一个对象 如果有一个接口或者抽象类,必须要用class定义一个实现类写重写抽象方法,才能创建对象并使用. 匿名内部类就是省略了用class定义子类的过程,直接使用父 ...

  6. ooday07 Java_接口

    笔记: 接口: 是一种引用数据类型 由interface定义 只能包含常量和抽象方法------默认权限是public 接口不能被实例化 接口是需要被实现/继承,实现/派生类:必须重写所有抽象方法 一 ...

  7. java_基础_接口和抽象类

    1.接口 java中接口的存在意义是:让多个继承该接口的类实现多态,让多个类有相同的特征 示例代码: interface MyInterface{ void myMethod(); } class T ...

  8. Java_日志接口实现

    日志的接口实现:改用slf4j实现日志功能 为什么要使用slf4j,而不是用log4j或者其他日志框架? 因为slf4j只是规定了一堆实现了日志的接口,并不关心日志怎么实现,这样就可以让项目脱离对日志 ...

  9. java_抽象类、接口、多态的使用

    抽象类 抽象类:包含抽象方法的类. 抽象方法 : 没有方法体的方法. 使用 abstract关键字修饰方法,该方法就成了抽象方法,抽象方法只包含一个方法名,而没有方法体. 格式为:修饰符 abstra ...

随机推荐

  1. (转)UIWebView与JavaScript的那些事儿

    UIWebView是IOS SDK中渲染网面的控件,在显示网页的时候,我们可以hack网页然后显示想显示的内容.其中就要用到javascript的知识,而UIWebView与javascript交互的 ...

  2. Appium依据xpath获取控件实例随笔

    如文章<Appium基于安卓的各种FindElement的控件定位方法实践>所述,Appium拥有众多获取控件的方法.当中一种就是依据控件所在页面的XPATH来定位控件. 本文就是尝试通过 ...

  3. C#。4 数组

    一.跳出循环的俩个关键字 1.break与continue.        这两个关键字一般放在循环的花括号里面使用.break——结束整个循环.continue——结束本次循环,进入下次循环. br ...

  4. Python时间戳和日期

    import time localtime=time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(time.time())) prin ...

  5. poj 1080 dp

    基因配对 给出俩基因链和配对的值  求配对值得最大值  简单dp #include<iostream> #include<stdio.h> #include<string ...

  6. 文成小盆友python-num9 socket编程

    socket编程 网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket. Socket的英文原义是“孔”或“插座”.作为BSD UNIX的进程通信机制,取后一种意思 ...

  7. Python学习笔记整理(十七)异常处理

    一.异常基础 try/except:捕捉由代码中的异常并恢复,匹配except里面的错误,并自行except中定义的代码,后继续执行程序(发生异常后,由except捕捉到异常后,不会中断程序,继续执行 ...

  8. c语言,全局变量,局部变量,外部函数,内部函数,stasic和extern的复习总结

    @import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...

  9. Histogram Equalization

    转载请注明出处. Histogram Equalization 也就是直方图均衡化, 是一种常用的通过直方图处理来增强图像的方法. 对于一副灰度图像,其像素范围一般在0~255之间,我们记nk(0&l ...

  10. Java日志最佳实践

    http://www.ibm.com/developerworks/cn/java/j-lo-practicelog/