定义的函数

xiahui12 2008-07-02 04:34:51
有个问题不知道怎么解决了
调用一个封装好的类的时候,能否给类中已经定义的函数重新定义一下函数的内容

比如:
类中定义一个函数名 public String thisFun();
外部new这个类之后可以给这个函数添加具体内容
有类似下面的功能 thisFun = { return "true";};
或者thisFun={public String getFun(){ return "true";}};

有知道的请赐教!谢谢
...全文
121 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
妄旺 2008-07-03
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 billgacsli 的回复:]
没明白呢~~

不是可以通过继承来实现method override吗?
[/Quote]

继承的方式就是可以一次性修改,也可以用类似于Listener的方式(没懂代理委托机制是嘛~~~)

具体代码示例如下:

public class TestOverride {
public static void main(String[] args) {
PackagedClass pc = new PackagedClass();
System.out.println(pc.thisFun());//输出"PackagedFun"

pc = new PackagedClass(){//定义对象是重新定义相应overridder的方法
public String thisFun(){
return "OuterOverridedFun";
}
};
System.out.println(pc.thisFun());//输出"OuterOverridedFun"
}

}

class PackagedClass{
public String thisFun(){
return "PackagedFun";
}
}


是你想要的结果不??
hotleavegjz 2008-07-02
  • 打赏
  • 举报
回复
用代理机制吧.
sd5816690 2008-07-02
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 billgacsli 的回复:]
没明白呢~~

不是可以通过继承来实现method override吗?
[/Quote]
94,继承这个类,然后在子类中重写thisFun方法
妄旺 2008-07-02
  • 打赏
  • 举报
回复
没明白呢~~

不是可以通过继承来实现method override吗?
fosjos 2008-07-02
  • 打赏
  • 举报
回复
proxy or callback
sy_22841597 2008-07-02
  • 打赏
  • 举报
回复
做委托

81,115

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧