Java 当有两个同名的类时,类的命名约定
我需要创建不同类型车辆的层次结构 我不知道我应该如何确切地命名每一种不同类型的汽车。我的第一个想法是给他们命名为Java 当有两个同名的类时,类的命名约定,java,naming-conventions,hierarchy,Java,Naming Conventions,Hierarchy,我需要创建不同类型车辆的层次结构 我不知道我应该如何确切地命名每一种不同类型的汽车。我的第一个想法是给他们命名为fordtrack和FordCar,但这对于每个类来说似乎都有点太多了 我的另一个想法是为汽车和卡车创建单独的包,这样名称就不会干扰。当试图实现同时使用汽车和卡车的方法时,在不同的包中使用相同的名称似乎有代码可读性较差的缺点 命名文件的惯例和最佳实践是什么?Make更适合作为车辆枚举,而不是类本身 编辑:我将对此进行一点扩展。你创建一个类来表示名词(事物),make(道奇、福特、雪佛
fordtrack
和FordCar
,但这对于每个类来说似乎都有点太多了
我的另一个想法是为汽车和卡车创建单独的包,这样名称就不会干扰。当试图实现同时使用汽车
和卡车
的方法时,在不同的包中使用相同的名称似乎有代码可读性较差的缺点
命名文件的惯例和最佳实践是什么?Make更适合作为车辆枚举,而不是类本身
编辑:我将对此进行一点扩展。你创建一个类来表示名词(事物),make(道奇、福特、雪佛兰等)是一个形容词,用来描述名词。与其给它自己的类,不如将其作为它所描述的类的属性。字符串也可以,我之所以选择Enum是因为我更喜欢它们。Make应该是卡车和汽车内部的标志,而不是类。正如Mike N所说,Enum常量就可以了。在这种情况下,它可以是一个实现Car和TRUCKI的类。如果使用后缀方式,至少要遵守标准Java命名约定:
FordCar
和fordctruck
。类名从不包含下划线。请清理抽象。道奇和福特是汽车制造商的分类;不是车辆类型。您正试图用一个类层次结构表示两个抽象。每个抽象使用一个层次结构