A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

如果没有简单工厂,我们需要从以下做起:
1)先定义接口Api,示例代码如下:   

public interface Api {      
    public void test1(String s); }
     
(2)既然有了接口,自然就要有实现,定义实现Impl,示例代码如下:   

public class Impl implements Api{     public void test1(String s) {
        System.out.println("Now In Impl. The input s=="+s);     } }
   
(3)那么此时的客户端怎么写呢?
按照Java的知识,接口不能直接使用,需要使用接口的实现类,示例代码如下:

public class Client {
    public static void main(String[] args) {         Api api = new Impl();
        api.test1("哈哈,不要紧张,只是个测试而已!");     } }
            你会发现在客户端调用的时候,客户端不但知道了接口 Api api = new Impl();
,同时还知道了具体的实现就是Impl。而接口的思想是“封装隔离”,而Impl这个实现类,应该是被接口Api封装并同客户端隔离开的,也就是说,客户端根本就不应该知道具体的实现类是Impl。
          不能够实现封装。暴露给客户端。

1 个回复

倒序浏览
学习学习.....~~赞一个
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马