`
wenson
  • 浏览: 1051203 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

说说Java接口的通俗理解

阅读更多

今天在Chinajavaworld中看到一则对Java接口理解的讨论,理解观点比较经典,现把主要内容摘录下来:

 

 

接口就是给出一些没有内容的方法,到具体用的时候再由用的方法自己定义内容
要注意的是想用接口必须实现接口的所有方法 

 

举例,比如一台电脑:

主板上的PCI插槽就是现实中的接口
你可你把声卡,显卡,网卡都插在PCI插槽上,而不用担心那个插槽是专门插哪个的
原因是做主板的厂家和做各种卡的厂家都遵守了统一的规定
包括尺寸,排线等等
但是各种卡的内部结构是一样的么?答案必然是否定的!
我们来模拟一下:
interface PCI
{
  void start();
  void stop();
}
//这是接口,相当于主板上的PCI插槽

class NetworkCard implements PCI
{
  public void start()
  {
    System.out.println("Send...");
  }
  public void stop()
  {
    System.out.println("Network stop!");
  }
}
//网卡
class SoundCard implements PCI
{
  public void start()
  {
    System.out.println("Du du...");
  }
  public void stop()
  {
    System.out.println("Sound stop!");
  }
}
//声卡
class MainBoard
{
  public void usePCICard(PCI p)
  {
    p.start();
    p.stop();
  }
}
//主板调用接口的运行方法,也就是调用PCI的函数
public class Assembler
{
  public static void main(String[] args)
  {
    MainBoard mb=new MainBoard();
    NetworkCard nc=new NetworkCard();
    mb.usePCICard(nc);
    SoundCard sc=new SoundCard();
    mb.usePCICard(sc);
  }
}
//这是运行

 

在上面所举的例子中,我发现即使不定义借口,各个类给出方法体,产生各自的行为,也可以实现相应的功能。那么,接口的意义到底在于什么地方呢?

 

 

这是个不错的问题,即使不定义接口我们还是一样写代码,一样的做
可是企业级的开发可不是三两个人一天两天就能干完的
几百人月的项目出来了,一个小公司干不了,就要把软件拆开分到很多小公司做
那怎么能保证各个公司做的代码最后和到一起能像我们想得那样运行呢
这里接口就体现了巨大的作用!
我分给你的任务,我不管你内部具体怎么实现,只要你按着我给你定义好的接口写
到我要用的时候统一调用就不会出现众多人写的代码和不到一起去的情况
我这说的只是接口最浅显的用处,当然在编程中接口对于带代码的可重用性,安全性,
健壮性,可维护性等有着至关重要作用!
所以有了新名词——“面向接口的编程”。

 

更俗一点的说法——

接口就是只有定义没有实现的东东..要用的时候再来实现他.打个比方说就像是电脑后面的显示器接口一样,它只说了他能接上一个显示器.只有当接上显示器的时候它才能实现功能

分享到:
评论
4 楼 wenson 2008-02-02  
lggege 写道
OO 中, 接口 是 功能的集合.

所以在万物(对象)的现世(OO世界中),是不存在接口这个虚拟的东西,因为,它是总结出来的,它是抽象出来的.

无论, 我们的代码再怎么奇技淫巧, 那是代码, 那是编程实现.


所谓通俗理解,一个形象的比喻罢了
3 楼 lggege 2008-02-02  
OO 中, 接口 是 功能的集合.

所以在万物(对象)的现世(OO世界中),是不存在接口这个虚拟的东西,因为,它是总结出来的,它是抽象出来的.

无论, 我们的代码再怎么奇技淫巧, 那是代码, 那是编程实现.
2 楼 billy1977 2008-02-02  
那么无聊的解释也叫“比较经典”呀。
1 楼 candy&yun 2008-02-01  
是挺通俗的,可是不够清晰..

相关推荐

    理解接口interface,j简单的一个demo

    在Java编程语言中,接口(Interface)是一种非常重要的概念,它是类型...在“InterfaceDemo”这个压缩包文件中,可能包含了实现上述接口的类和主程序,通过运行这个示例,你可以更直观地理解接口在Java编程中的作用。

    基础java讲解通俗易懂

    在编译阶段,Java源代码文件(.java)被编译成字节码文件(.class),这些字节码文件由JVM解释执行。Java环境变量配置包括设置JAVA-HOME环境变量,指向JDK的安装目录,以及配置Path和ClassPath环境变量,以便操作...

    一张图让你通俗易懂得理解java反射机制!

    一张图让你通俗易懂得理解java反射机制!

    JAVA教程通俗易懂不啰嗦

    很详细 又不啰嗦的 ppt教程 通俗易懂不啰嗦

    21天学通JAVA 更通俗意懂

    这套教程以其通俗易懂的语言和丰富的实例,深受广大JAVA学习者的喜爱。下面我们将深入探讨教程中的关键知识点。 1. **JAVA基础语法**:在第一天的学习中,通常会介绍JAVA的基本结构,包括如何编写第一个"Hello, ...

    零基础学Java,通俗易懂的Java入门课

    课程信息:零基础学 Java,通俗易懂的 Java 入门课。阿里云盘下载。 这门课将帮你轻松迈进编程世界的大门,并能够独立编写出规范、有用的 Java 程序,同时为后续的深入学习打下坚实的基础。 课程收获:全面掌握 ...

    java与设计模式--通俗易懂的介绍

    本篇将通俗易懂地介绍几种常见的设计模式,并提供相关的Java代码示例。 首先,设计模式主要分为三大类:创建模式、结构模式和行为模式。 **创建模式**关注的是对象的创建。例如: 1. **工厂模式**(Factory ...

    通俗易懂的java设计模式

    本资源“通俗易懂的Java设计模式”旨在帮助初学者和有一定经验的开发者更好地理解和应用这些模式。 首先,设计模式的基本分类包括创建型、结构型和行为型三大类。创建型设计模式如单例(Singleton)、工厂方法...

    Java开发中名词的通俗解释共2页.pdf.zip

    这份名为“Java开发中名词的通俗解释共2页.pdf”的压缩文件,显然提供了一份简明扼要的Java编程术语解析,旨在帮助初学者或有经验的开发者更好地理解Java开发中的关键概念。虽然压缩包中似乎还有一个名为“赚钱项目...

    java很通俗易懂容易入门的课件和一些上机题

    java的资源。里面有很通俗易懂,容易入学入门的课件;一些上机题,一份考试题模板

    Java设计模式----通俗易懂版

    这个资源"Java设计模式----通俗易懂版"显然是一个专门针对初学者或需要深入理解设计模式的开发者编写的指南。作者以形象生动的例子解释了23种经典的Java设计模式,使得复杂的概念变得更加易于理解。 首先,我们要...

    【白盒测试通俗解释及设计方法】白盒测试通俗解释及设计方法

    白盒测试白盒测试通俗解释及设计方法白盒测试通俗解释及设计方法白盒测试通俗解释及设计方法白盒测试通俗解释及设计方法白盒测试通俗解释及设计方法白盒测试通俗解释及设计方法白盒测试通俗解释及设计方法白盒测试...

    通俗易懂的javaIO讲解

    ### 通俗易懂的Java IO讲解 在Java中,输入输出流(IO)是一个非常重要的概念,它涉及到了数据如何从一个地方传输到另一个地方。本文将深入浅出地介绍Java IO的基础概念,并通过实例帮助读者更好地理解这些概念。 ...

    Java泛型类、接口、方法的使用方法的全部案例

    Java的泛型类、接口、方法的使用方法的全部案例 具体博文: List接口与实现类:https://blog.csdn.net/yao_yaoya/article/details/128018221 泛型的介绍和使用方法:...

    网关的最通俗解释

    网关的最通俗解释 迅速理解什么是网关及网关的作用

    23种设计模式JAVA实现,例子通俗易懂

    本资源提供了23种设计模式的Java实现,通过具体的代码示例帮助开发者深入理解并掌握这些模式。 1. **单例模式(Singleton)**:确保一个类只有一个实例,并提供全局访问点。防止多线程环境下多个实例的产生,常用于...

    Java通俗易懂的课件

    这个"Java通俗易懂的课件"集合提供了丰富的学习资源,特别适合初学者掌握Java的基础知识和核心概念。 第一章《Java简介》(2003).ppt:这部分内容通常会介绍Java的历史背景、发展过程以及其在软件开发中的应用。它...

    Java零基础学习视频通俗易懂

    2. **环境配置**:学习Java的第一步通常是安装Java Development Kit (JDK),并设置好环境变量JAVA_HOME和Path,以便在命令行中运行Java编译器`javac`和解释器`java`。 3. **语法基础**:Java的基础语法包括变量声明...

    非常好的Java入门图解教程

    通过这个"非常好的Java入门图解教程",初学者可以逐步理解这些概念,通过实例和图解加深理解,从而轻松掌握Java编程基础。记得实践是检验理解的最好方式,动手编写代码、调试和运行,你会更快地进步。

    【Java设计模式】标记接口模式

    2. **通俗解释**: - Java中的标记接口设计模式使用空接口以类型安全的方式信号或定义对象的某些属性和行为,而不需要特定的方法实现。 3. **维基百科解释**: - 标记接口模式是计算机科学中的

Global site tag (gtag.js) - Google Analytics