作者swpoker (swpoker)
看板java
标题Re: [问题] 请问设计模式里的物件回传
时间Wed May 2 10:32:08 2012
※ 引述《rokaku (昵称能用来干嘛?)》之铭言:
: 最近在写一个java class供别人呼叫,
: 所以外人可写一class来操作我的内部class
: 其中有一个method是需要指定某内部类别的资料
: 问题就卡在既然是内部类别资料, 我就不应该将内部资料export出来
: 想到一种做法是"将要指定的资料"做成一个类别放在内部类别里供呼叫
: 可是如果外部class完全不知内部有何资料, 那这个方法就行不通
: 查了一下design pattern, 好像没有讲如何回传内部类别
: 或者说有更好的处理方法, 希望有高人可以指点一下
: 先谢谢了
定义的外部使用者所需要的行为是什麽
例如别人要呼叫 某类别的 methodA
然而他需要某些输入的参数及回应的参数
在这里我偷懒点将输入参数及回应参数放在一起
构成参数介面 interface XXXXBean
里面只有各个参数的set 及 get 方法
然後利用工厂类别或是该操作方法methodA的类别提供建构方法去提供该物件
interface 给别人用的{
XXXBean instanceOfXXXBean();
XXXBean methodA(XXXBean){}
}
interface XXXBean{
....
}
然後你可以利用bridge样式将你的内部物件隐藏在XXXBean里面
那麽外面的人可以像使用你的内部物件一样使用XXXBean,而又不会破坏封装
提供给你参考一下
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 163.29.28.131
1F:推 rokaku:谢谢回覆,做法跟前一位网友类似我就不重覆问了,再次感谢哦~ 05/02 23:54