开发者社区> 问答> 正文

[@talishboy][¥20]Java类里面的方法建议使用private、protect还是public?

Java类里面的方法建议使用private、protect还是public?

展开
收起
黄二刀 2018-12-16 12:37:39 2077 0
3 条回答
写回答
取消 提交回答
  • 宇宙虽有其起源,却没有终结。无限。 星球虽也有起源,却因其自身之力走向毁灭。有限。

    如果明确是为了给外部调用的方法则用public
    如果只是为了类内自己使用则private
    如果子类也要使用or覆盖的话则protect

    清晰和严格的权限控制能 让自己与子类,自己与外部之间尽可能的减少偶尔,从而遇到变动时能减少互相影响的可能性。

    2019-07-17 23:22:12
    赞同 展开评论 打赏
  • 每种访问权限都有自己的强使用场景,你需要结合方法的具体场景以及未来潜在的扩展性来考虑,尤其在写框架的时候。建议尽可能从严控制。

    2019-07-17 23:22:12
    赞同 展开评论 打赏
  • 孔祥坤 职位:阿里妈妈应用平台技术专家 擅长问题:分布式应用系统架构、Java核心技术以及开源framework等 经历:10年左右Java应用系统研发及架构设计经验,曾主导和参与多个重要广告应用系统的研发设计,目前在阿里妈妈从事广告投放中台的研发工作。

    这个还是看具体场景的,设计这几个关键字就是为了避免成员变量或者方法被滥用,同时也可以降低使用者的选择成本,程序员可以跟根据具体场景来设定访问权限。例如,如果一个方法只会在本类中使用就完全可以标记成private,那么这个方法对外部完全不可见,如果一个方法允许在其子类中使用,但是不允许在其他外部类中使用,那么就可以比较成protected。具体使用哪种关键字没有强制的规定,但是最好尽量遵循这几个关键字设计的本意。

    2019-07-17 23:22:12
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载