java 板


LINE

※ 引述《bleed1979 (十三)》之铭言: : 可恶,我的国文开始烂了。 : 原po的意思是指 : List<String> list = new ArrayList<String>(); : 和 : ArrayList<String> al = new ArrayList<String>(); : 吗?? : 还是请原po举几个例子?? Public class A { private String mName; private int mAge; public A(String name , int age){ //略 } public get(){ //略 } public set(){ //略 } public void print(){ //print something } 我想要强调的是这个Class A 有public 的 getter & setter 今天我预设之下把Class A 的instance pointer 给某个Class B 使用是允许的。 可是很不巧某个Class C 也会用到 Class A 的某些public method 或是额外的东西, 只不过这个Class C 我不希望他会去使用到Class A 的 getter & setter,也就是说我不 希望Class C 透过 getter & setter动到我 Class A 的某些东西。 我过去要完成这样的想发都是先写一个 interface public interface SpecialCallback{ public void doSomethingSpecial(); } 然後 public class A implements SpecialCallback{ //略 } 在 Class C 里面藏一个 field public class C { private SpecialCallback mCallback; public C (SpecialCallback callback){ this.mCallback = callback; } public void method(){ . . mCallback.doSomethingSpecial(); . . } } 然後 new C的时候把 A 的instance pointer带进去 我的问题在於说如果Class C知道SpecialCallback 所带进来的东西是Class A cast一下,那我前面写的东西不就做白工了...?? //----------------------------------------------------------------------- 不过昨天我有找到另外一种方法 在 Class A写一个 getCallback() 然後在里面new 一个Specialcallback 并实做完再return 回去 new Class C 的时候喂的是 instanceA.getCallback()就好了 不晓得这个方法是否正确? 希望我描述的够清楚@_@ -- If a child on the street who has nothing is willing to share, why are we who have everything still so greedy? --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 106.1.108.108 ※ 编辑: liu2007 来自: 106.1.108.108 (10/14 12:44)
1F:推 LPH66:"如果 Class C 知道" 所以不要让 Class C 知道就好啦 10/14 12:53
2F:→ LPH66:是说这不就是你的 interface 所想做的事吗.... 10/14 12:54
3F:→ LPH66:再说为什麽 Class C 会知道那其实是 Class A 呢? 10/14 12:56
4F:推 PsMonkey:推楼上... 如果想恶搞的话,API 根本无法设计了阿 XD 10/14 13:04
5F:→ swpoker:版上有人讨论过了 10/14 13:22
6F:→ swpoker:Killercat □ [J2SE] 谈谈Service的设计 10/14 13:26
7F:→ swpoker:为啥A会有public的方法呢? 10/14 13:38
8F:→ Chikei:想恶搞的话,同个JVM内根本没办法防吧XD 看这精美的反射API 10/14 15:05
9F:→ swpoker:has and not is!使用bridge吧 10/14 17:44







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:BabyMother站内搜寻

TOP