有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

在包中分组类的java约定

我一直想知道以下哪种方法是最好的:

1)

包:cars.blue 类:CarOne.javaCarTwo.java

包装:cars.red 类:CarOne.javaCarTwo.java

2)

包:cars.blue 类:BlueCarOne.javaBlueCarTwo.java

包装:cars.red 类:RedCarOne.javaRedCarTwo.java

3)

包:cars

课程:BlueCarOne.javaBlueCarTwo.javaRedCarCone.javaRedCarTwo.java

方法1:将汽车类分成不同的包

方法2:似乎有点超载,因为汽车类别已经可以通过包来区分。但是,当您只查看类名时,前缀是一个优势,不需要再查看它所属的位置

方法3:把所有的车放在一个包里

哪种方法最好


共 (4) 个答案

  1. # 1 楼答案

    否则,我将使用model/pojo/domain包,执行如下操作:

    package model;
    
    class Car {
        private String carColor; //Blue, Red
        private String carType;  // One, Two
    
        // getter and setters
    
    }
    
  2. # 2 楼答案

    我会选择方法3。因为所有的汽车都在同一个包中(所有的域类都在一起)。这是一个有争议的问题,每个人都可能有自己的利益。AFAIK除了基于用例的判断之外,没有预定义的约定

  3. # 3 楼答案

    方法1在两个软件包相互排斥的情况下非常有用,即当汽车有一个共同的界面时,红色和蓝色被编译成单独的罐子,并且一次只出现这两个罐子中的一个。当两个包都可能存在时,这种命名会令人困惑

    方法2和方法3几乎是等效的,因为它们的名称彼此相差很大。创建一个单独的包(方法2)可能有点过分,也可能没有,这取决于应用程序中使用这两组类的方式

  4. # 4 楼答案

    您可能应该创建封装功能块的包。颜色的区别实际上并不意味着任何功能上的差异,因此我也会选择选项3