Java:构造函数、静态方法、公共方法、私有方法的位置?

Java:构造函数、静态方法、公共方法、私有方法的位置?,java,convention,Java,Convention,我的问题是:最喜欢的放置方法是什么?我的意思是,应该首先声明静态方法,然后是构造函数,然后是公共方法,然后是受保护的,然后是私有的,等等?是否有某种约定,比如我想每个人都会将字段(实例变量)放在代码的顶部。关于方法有相同的政策吗 我想这取决于你使用的语言。那么Java呢?这可以归结为团队偏好,但遵循总是好的这可以归结为团队偏好,但遵循总是好的这有点基于观点,但谷歌Java风格的文档很好地说明了这一点: 类成员的排序对可学习性有很大的影响,但如何做到这一点并没有单一的正确方法。不同的班级可能会对其

我的问题是:最喜欢的放置方法是什么?我的意思是,应该首先声明静态方法,然后是构造函数,然后是公共方法,然后是受保护的,然后是私有的,等等?是否有某种约定,比如我想每个人都会将字段(实例变量)放在代码的顶部。关于方法有相同的政策吗


我想这取决于你使用的语言。那么Java呢?

这可以归结为团队偏好,但遵循总是好的

这可以归结为团队偏好,但遵循总是好的

这有点基于观点,但谷歌Java风格的文档很好地说明了这一点:

类成员的排序对可学习性有很大的影响,但如何做到这一点并没有单一的正确方法。不同的班级可能会对其成员进行不同的排序

重要的是,每个类都以某种逻辑顺序对其成员进行排序,如果有人要求,其维护者可以对此进行解释。例如,新方法不仅仅是习惯性地添加到类的末尾,因为这将产生“按日期添加的时间顺序”排序,而不是逻辑排序

我在开源世界看到的大多数代码都使用了

  • 静态场
  • 实例字段
  • 建设者
  • 方法(实例和静态)
  • 匿名类

    • 这有点基于观点,但谷歌Java风格的文档很好地表达了这一点:

      类成员的排序对可学习性有很大的影响,但如何做到这一点并没有单一的正确方法。不同的班级可能会对其成员进行不同的排序

      重要的是,每个类都以某种逻辑顺序对其成员进行排序,如果有人要求,其维护者可以对此进行解释。例如,新方法不仅仅是习惯性地添加到类的末尾,因为这将产生“按日期添加的时间顺序”排序,而不是逻辑排序

      我在开源世界看到的大多数代码都使用了

      • 静态场
      • 实例字段
      • 建设者
      • 方法(实例和静态)
      • 匿名类

        • 说到执行,
          JVM
          保证了我们无法改变的顺序

          但从代码可读性的角度来看,是的,排序看起来确实不错。应该遵循编码标准

          静态字段->实例字段/变量

          正如我们所知,
          静态块
          总是在类加载后被调用,所以我们应该拥有它

          然后
          构造函数
          ,对于对象创建,在末尾没有编写构造函数的意义


          正如上面所建议的,这也是一本很好的读物。

          谈到执行,
          JVM
          保证了我们无法更改的顺序

          但从代码可读性的角度来看,是的,排序看起来确实不错。应该遵循编码标准

          静态字段->实例字段/变量

          正如我们所知,
          静态块
          总是在类加载后被调用,所以我们应该拥有它

          然后
          构造函数
          ,对于对象创建,在末尾没有编写构造函数的意义


          正如上面所建议的,这也是一个很好的阅读。

          Java中的顺序是不相关的,只要它们存在就行。只要保持一致。询问团队其他成员是否遵守某些惯例。如果没有,或者如果您是自己编写代码,请选择一个约定(例如Oracle的官方Java代码约定)并坚持它。Java中的顺序不相关,只要它们存在。只要保持一致即可。询问团队其他成员是否遵守某些惯例。如果不是,或者如果您是自己编写代码,请选择一个约定(例如Oracle的官方Java代码约定),并坚持它。声明的位置对于变量和方法并不重要,因为Java在类声明中没有“前向引用”问题。声明的位置对于变量和方法并不重要,因为Java在类声明中没有“前向引用”问题。