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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© jagon 中级黑马   /  2014-3-14 12:02  /  626 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

interface Subject {        // 定义接口
         public void get() ;         // 抽象方法
}
class RealSubject implements Subject {   // 被传递对象
         public void get() {
                   System.out.println("对象任务") ;
         }
}
class ProxySubject implements Subject {     // 操作传递对象
         private Subject sub = null ;
         public ProxySubject(Subject sub) {
                   this.sub = sub ;
         }
         public void prepare() {
                   System.out.println("开始任务") ;
         }
         public void destroy() {
                   System.out.println("结束任务") ;
         }
         public void get() {
                   this.prepare() ;
                   this.sub.get() ;
                   this.destroy() ;
         }
}
public class Test {
         public static void main(String args[]) {
                   Subject sub = new ProxySubject(new RealSubject()) ;
                   sub.get() ;
         }
}
帮忙总结规律:(我发现好像有些规律,请有同样感觉的人帮忙总结啊!)
1、什么时候需要传递对象?
(1)当对象需要传递给另一个对象进行加工操作时;
(2)需要对一个对象进行包装时;
(3)在类的包装中好像也需要,比老师见过的,在IO流中,有些类的功能不够强大,但是又不能更改源码,所以只能创建新的类,接收这个类,对这个类进行功能增强,例如:BufferedReader等
2、接收对象的类通常是干什么用的?

评分

参与人数 1技术分 +1 收起 理由
菜小徐 + 1

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马