大部分情况下我们都使用这几个修饰来修饰方法。
当然对类来说,相信大部分都默认使用 Public,大部分人都不去纠结。
Public: 简单来说就是谁都可以访问,你写个类除了特殊要求,当然都是希望大部分人用的。
Private:私有。 除了class自己之外,任何人都不可直接使用。简单来说就是一个方法,你只希望自己的这个类可以用,不希望这个方法在其他类中使用。Private 这个在类中的私有方法中定义比较多。
Protected:这个就是最纠结,简单来说就是这个修饰的方法使用范围比 Public 小,但是又比 Private 大。对于其他的外部类,protected 就变成 private。
官方的:Controlling Access to Members of a Class (The Java™ Tutorials > Learning the Java Language > Classes and Objects) 文章对上面几个修饰有了定义。
也顺便偷了一张图。
对我们来说 Protected 和 Public 也差不多了,没有很多奇葩需求的话,你就 Public 算了,省得纠结。
这就是为什么你看很多人的代码的时候,大部分都是 Public 和 Private,用 Protected 修饰的方法远没有这 2 个这么多。
本来不想纠结这几个关键字的,无奈学院派的人非要纠结,有点讨厌。
对日常的业务逻辑开发,只要是类里面的方法,你就 Private,因为别人也不一定用得到。
如果你希望其他人用,就 Public,并且单独做成类,让别人直接调用吧,不要过于纠结。
https://www.ossez.com/t/java-public-private-protected/14056