`

java 接口的讲解

 
阅读更多



从网上搜的,简直就是膜拜!

          接口有点象一个规范、一个协议,是一个抽象的概念,对类的一个定义;而类则是实现了这个协议,满足了这个规范的具体实体,是一个具体的概念。接口中定义类方法的原型,从程序角度,简单理解,接口就是函数声明,类就是函数实现。需要注意的是同一个声明可能有很多种实现。

         接口是类的抽象,类是对象的抽象!
原文:
比如,你要一个充气娃娃,这个充气娃娃有一个makeLove方法,你买这个娃娃就是冲着makeLove去的,你不关心它是哪国的娃娃,长得怎样。那么代码就体现为:

interface Chongqiwawa{
public void makeLove(String name);
}

 

class Person{
 Chongqiwawa wawa;
 public void setWawa(Chongqiwawa wawa){
   this.wawa = wawa;
 }
private String name;
 public void makeLove(){
  //调用wawa的makeLove方法
  wawa.makeLove(name);
} 

 

现在,你想和wawa那个,就可以这样用了:

main(){
  Person you = new Person();
  you.makeLove();
}

 
报错了吧?你怎么能跟虚的wawa那个呢?所以必须要买一个wawa.好吧,去逛成人店选购一个wawa.这里有日本娃娃,美国娃娃,先看看美国娃娃功能怎么样。

class USAWawa implements Chongqiwawa{
   public void makeLove(String name){
     System.output.println(name + " come on! a,a, a..."); 
  }
} 

 
好吧,你已经流口水了,一口价成交,然后带回家,迫不及待实践一下,代码体现为:

main(){
  Person you = new Person();
  Chongqiwawa wawa = new USAWawa();
  you.setWawa(wawa);
  you.makeLove();
} 

 
这时候你已经可以和娃娃啪啪啪了。不久,你发觉厌倦了美国娃娃,想试下日本娃娃,再次来到成人超市,日本娃娃makeLove功能实现如下:

class JapanWawa implements Chongqiwawa{
   public void makeLove(String name){
     System.output.println(name + " yemede! a,a, a...ganbade..."); 
  }
} 

 
OK,你直接丢下一堆钞票一句不用找就抱回家了,马上进入主题:

main(){
  Person you = new Person();
  //获得实际的wawa
  Chongqiwawa wawa = new JapanWawa();
  you.setWawa(wawa);
  you.makeLove();
} 

 
看见了吗,只需改动一行代码,你就实现了娃娃的切换,得到不同的makeLove感受,其他代码都不用改。OK,停止 YY,回到主题。这里的Chongqiwawa  对应于 ActionListener,你要实现actionListener接口就相当于实现一个美国娃娃或日本娃娃,然后你addActionListener,就相当于给系统提供一个wawa,系统只要在产生相应事件时调用接口的actionPerformed方法,就相当于你在饥渴时调用makeLove方法,你知道有这个方法即可,不用关心他是哪来的和怎么实现的。



 

分享到:
评论

相关推荐

    Java 接口 讲解.ppt

    Java 接口 讲解.ppt

    java程序接口讲解笔记

    java程序接口讲解笔记

    C++调用Java接口

    本教程将详细探讨如何使用C++通过JNI(Java Native Interface)来调用Java接口。JNI是Java平台标准的一部分,它允许Java代码和其他语言写的代码进行交互。下面,我们将深入讲解这个过程,并结合实际例子“CInvokJava...

    Dubbo调用java接口程序

    本篇文章将深入讲解如何使用Dubbo进行Java接口的调用。 首先,理解Dubbo的核心概念: 1. **服务(Service)**:服务是业务逻辑的封装,它定义了服务的接口和协议,如`HelloService`,包含了一组`sayHello`这样的...

    JAVA 接口自动化测试Demo_testng

    主要对举例对国家气象局接口自动化测试进行讲解(Get请求及结果断言),以达到自动化测试入门目的,需要有一定的JAVA知识(HTTP相关)。

    Java接口详细讲解PPT教案学习.pptx

    Java接口详细讲解PPT教案学习.pptx

    JAVA核心技术讲解

    《JAVA核心技术讲解》 在Java编程领域,"JAVA核心技术讲解"是学习者和专业人士不可或缺的知识宝典。这里的“核心技术”通常涵盖了Java语言的基础、高级特性以及面向对象编程的核心概念。第八版,即(Core Java 8th ...

    Java接口Demo

    通过以上讲解,我们已经了解了Java接口的基本用法,包括定义接口、实现接口、接口继承、接口与多态、默认方法和静态方法、接口常量以及匿名内部类的使用。在实际开发中,接口是实现软件设计模式、提高代码可维护性和...

    delphi调用Java接口.rar

    本教程将详细讲解如何在Delphi中调用Java接口,利用JNI(Java Native Interface)技术实现这一目标。首先,我们需要了解JNI的核心概念以及在Delphi中如何使用它。 JNI是Java平台提供的一种标准机制,允许Java代码和...

    用java调用.net接口的方法

    标题提到的“用java调用.net接口的方法”就是解决这个问题的一种技术实践。以下将详细讲解三种主要的实现方式,以及如何通过提供的源代码进行操作。 首先,我们要理解Java和.NET之间的互操作性通常依赖于Web服务...

    Java接口自动化测试

    Java+接口自动化测试视频教程,视频高清,讲解易懂,楼主也一直在学习,

    Java接口技术讲解PPT教案学习.pptx

    Java接口技术是Java编程语言中的一个重要概念,它在软件设计中起到了关键的作用,尤其是在实现多态性和抽象化设计时。接口定义了一组方法签名,但不包含任何方法的实现,这意味着它只描述了方法的存在,而没有指定...

    Java 语言程序设计:第5章接口多态.ppt

    本章主要讲解 Java 语言程序设计中接口和多态的概念、语法和应用。接口是 Java 语言中的一种抽象机制,它提供了一种定义类之间的“协议”的方式,允许类之间实现多继承,同时免除 C++ 中的多继承那样的复杂性。同时...

    Java 接口和抽象类区别

    Java接口和抽象类是两种重要的面向对象编程概念,它们在软件设计中扮演着关键角色,主要用来实现多态性和代码的可扩展性。虽然两者都用于定义类的行为,但它们之间存在着显著的区别。 首先,接口是一种完全抽象的...

    service_java接口远程调用_get、post、带参数远程调用_

    - 对于Java接口远程调用,通常会封装成服务类,如`RemoteRequestServiceImpl.java`和`RemoteRequetService.java`中的实现。服务类中会包含执行HTTP请求的方法,可能包括设置请求头、处理响应等逻辑。 4. **使用库...

    C++库封装JNI接口-实现java调用c++

    本教程将详细讲解如何将C++库封装为JNI接口,以便于Java程序调用。 首先,了解JNI的基本概念。JNI是一套接口,它定义了Java虚拟机(JVM)如何与本地代码(如C++)通信。Java程序可以通过JNI调用本地方法,这些本地...

    java接口视频

    Java接口在编程领域中扮演着至关重要的角色,尤其对于初学者而言,理解并熟练使用接口是进阶成为专业Java开发者的必备技能。本教学视频由知名教育机构传智播客的资深讲师毕向东主讲,旨在帮助Java新手深入理解接口的...

    java多线程的讲解和实战

    本资料详细讲解了Java多线程的原理,并提供了丰富的实战代码,非常适合Java初学者以及希望深入理解多线程的开发者。 1. **线程的基本概念**:线程是程序执行的最小单位,一个进程中可以有多个线程同时运行。Java...

    Java接口(interface)的概念及使用-Java教

    通过以上讲解,我们可以看出Java接口在软件设计中的重要性,它帮助我们创建松耦合、易于维护的系统。理解并灵活运用接口,能显著提高代码的可读性和可维护性,是每个Java程序员必须掌握的基础知识。在实际开发中,...

    JAVA面试题目讲解

    "JAVA面试题目讲解"这个压缩包文件包含了丰富的Java面试笔试题目以及面试帮助文档,旨在帮助求职者更好地应对各种面试挑战。以下是一些Java面试中可能会遇到的重要知识点: 1. **基础语法**: - 数据类型:了解...

Global site tag (gtag.js) - Google Analytics