Note(5):对接口的理解(二)

原创 2007年09月30日 10:22:00

以前总觉得接口没什么用处,现在开始慢慢的了解到接口在编程中是能起到很大作用的。为了更好的理解接口的应用,我又写了一些相关的测试程序代码。

       接口IPerson,类Mary和类Tom(代码如Note 4:对接口的理解(一)),

       新添加的类GetPerson,功能是简单的为用户提供人员:

       public class GetPerson {

       private int mary=1;               //mark whether Mary is rest.

       private int tom=0;                 //mark whether Tom is rest.

      

       public IPerson applyPerson(){

              if(mary==0){

                     this.mary=1;

                     return new Mary("Mary");

              }

              if(tom==0){

                     this.tom=1;

                     return new Tom("Tom");

              }

              return null;

       }

}

Main方法:

public class Main {

       public static void main(String[] args) {

              GetPerson gp=new GetPerson();

             

              IPerson p1=gp.applyPerson();

              if(p1==null){

                     System.out.println("Sorry! No person is rest!");

              }else{

                     System.out.println(p1.getName()+" is emploied for you.");

                     p1.smile();

                     p1.talk("Hello! I am "+p1.getName());

              }

             

              IPerson p2=gp.applyPerson();

              if(p2==null){

                     System.out.println("Sorry! No person is rest!");

              }else{

                     System.out.println(p2.getName()+" is emploied for you.");

                     p2.smile();

                     p2.talk("Hello! I am "+p2.getName());

              }

}

我们可以看到,当调用的方法返回的数据类型是不确定的时候,使用接口,就可以很好的来存储和操作。当然,这样操作的前提是,返回的数据类型是实现了同一个接口的,而且,后续使用接口进行的操作应该是在接口中事先声明过的。 

相关文章推荐

对接口的理解

接口I就是a类去b类中拿想要的东西,接口I就是a类的实例代表 a 实现这个接口I,b接收a传递过来的接口实例,在获取数据的地方调用接口的方法即可public class Person{ //...

Java中,对接口的理解

在java的初期学习中,我们知道引用数据的类型有类,数组和接口.那接口是什么呢?         接口是行为的集合,表明具备什么样的能力.在接口中,所有的方法都是抽象方法,也就是所有的方法都不提供具...
  • luoxl81
  • luoxl81
  • 2011年11月09日 15:04
  • 959

Item 34 分清对接口的继承和对实现的继承

需求: 1> 通过派生,只继承基类的函数接口(即它们的声明); 2> 接口和实现都继承,而且不让它们被派生类覆盖; 3> 接口和实现都继承,允许它们被派生类覆盖。class Shap...
  • ba_jie
  • ba_jie
  • 2011年04月24日 12:35
  • 319

cxf+spring开发(三)--- 限制固定Ip地址对接口的访问次数

需求:在cxf+spring环境下,针对某个接口,限制Ip地址对其访问次数,超过一定访问次数后抛出异常。 1.此Ip地址是经过拦截器被允许访问的; 2.同一IP地址对接口的访问次数不能超过两次。 备注...

我对接口与抽象类的理解

1、从编程思想上来讲,抽象类首先是类,具有分类学的意义,有两层含义,一是以研究对象的整体来划分的,二是互斥性。类一定存在具体的对象才有意义。分类一般采用树型层级进行。一般情况下,上一层分类都是对下一层...

Castle AOP 系列(二):对接口方法调用的拦截(有源码)

相比于对类方法的拦截,对接口方法的拦截为我们的架构设计方面提供了更大的自由度。 1. 接口CastleAOPTestB.Lib.IPerson的定义 using System; using Sys...

C# 对接 Java 3des md5WithRsa

  • 2017年01月13日 17:25
  • 742KB
  • 下载

https 对接非对称密钥加密 MD5及数字签名相关

由于面试笔试中经常会涉及到https及加密解密相关的技术,故此下面我对相关加解密知识进行简单总结,主要是剖析https背后的运行机制。先来了解下有关加解密的基础技术,如MD5  数字签名 非对称密钥加...

cwm6-recovery-note2.tar.md5

  • 2012年11月17日 20:03
  • 7.32MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Note(5):对接口的理解(二)
举报原因:
原因补充:

(最多只允许输入30个字)