静态方法 和 回调函数 用那个

lth3696 2018-02-02 11:46:36
问题是这样的,比方说在类A 中有个进度条,现在类A中实例类B 在B中需要改变进度条的进度.
通常,我们都是在类B中回调类A进度条改变的方法来达到目的
但是,使用静态方法也是可以,在类A中添加个静态方法来改变进度条进度.在类B中直接调类A 的静态方法来达到目的

我想问的事,对于这个问题,那种方式更好?为什么好?

其实我个人觉得应该是回调这种方式来实现比较合理,但是我确讲不出哪里合理,静态方法那种哪里不对.
求各位大牛帮小弟解惑.
...全文
926 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
maradona1984 2018-02-06
  • 打赏
  • 举报
回复
静态方法也没啥不好,当然回调更好 静态方法缺点并不是他不好,而是java是面向对象的语言,静态方法更偏向于函数式,而你设计的代码偏向于面向对象,却插进个函数式的代码,总会有不合群的突兀感 个人觉得静态方法最好用于工具类,SDK之类的跟业务逻辑关系不大的代码
oyljerry 2018-02-05
  • 打赏
  • 举报
回复
引用 3 楼 lth3696的回复:
[quote=引用 2 楼 oyljerry 的回复:] 通过interface定义回调接口调用。
我知道怎么实现,我想问的是区别 . [/quote] 静态方法有类的限制。没有实例。接口定义更清楚和规范
lth3696 2018-02-05
  • 打赏
  • 举报
回复
引用 1 楼 tianfang 的回复:
不能用静态方法,静态方法只能访问静态数据,如果有两个实例,两个进度条就不能分别控制了。
这个确实是. 还有么
lth3696 2018-02-05
  • 打赏
  • 举报
回复
引用 2 楼 oyljerry 的回复:
通过interface定义回调接口调用。
我知道怎么实现,我想问的是区别 .
oyljerry 2018-02-02
  • 打赏
  • 举报
回复
通过interface定义回调接口调用。
tianfang 2018-02-02
  • 打赏
  • 举报
回复
不能用静态方法,静态方法只能访问静态数据,如果有两个实例,两个进度条就不能分别控制了。

51,411

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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