28

为什么 Java 类的第一个字母要大写?不能运行包含小写类名的程序吗?如果可能,有什么区别?

4

10 回答 10

113

这是一种编码约定,被大多数 Java 程序采用。当您习惯于给定的标准时,它使阅读代码更容易。

不,您不必遵循它,但不这样做您不会结交任何朋友;)

为什么/如何首先建立这个公约?

该约定由 Sun/Java 语言的创建者制定。

它的建立可能是为了在广泛而多样化的受众中改进语言的推广,降低新开发人员的入门级要求(如果您不需要在其他人的“想法”之间不断切换,那么学习会更容易)代码看起来像)并且通常尝试在社区内保持代码清洁。

你可以问“为什么公司有编码员的风格指南?” 并且原因通常是相同的

于 2012-08-14T06:46:44.283 回答
22

使用命名约定可以让您在阅读代码时更轻松地快速理解代码。

下面是两行简单的代码:

foo = FooFactory.getFooInstance();
foo.doSomethingFoosDo();

如果我们知道作者遵循命名约定,我们很快就会知道几件事:

  1. foo是某个类的一个实例
  2. FooFactory是一个类
  3. getFooInstance()是类FooFactory的静态方法
  4. doSomethingFoosDo()foo的实例方法

否则我们会浪费时间去思考诸如“ FooFactory 是一个对象还是一个类? ”之 类的问题。

如果没有命名约定,您实际上必须搜索源代码才能回答这些问题。

起初这似乎过于紧张,但当您开始编写更复杂的软件并与他人合作时,它会产生巨大的差异。

您会发现命名约定甚至使您自己的代码更具可读性。

于 2012-08-14T06:52:32.630 回答
18

为什么 Java 类的第一个字母要大写?

Java编程语言有代码约定,它说:

Java 编程语言文档的代码约定包含我们在 Sun 遵循并建议其他人遵循的标准约定。它涵盖了文件名、文件组织、缩进、注释、声明、语句、空格、命名约定、编程实践并包括一个代码示例。

  • 一个软件的生命周期成本的 80% 用于维护。
  • 几乎没有任何软件在其整个生命周期中都由原始版本维护
  • 代码约定提高了软件的可读性,使工程师能够更快、更彻底地理解新代码。

它说明了Naming Conventions,它在类名上说:

类名应该是名词,大小写混合,每个内部单词的首字母大写。尽量保持你的类名简单和描述性。使用完整的单词——避免使用首字母缩写词和缩写词(除非缩写词比长格式更广泛地使用,例如 URL 或 HTML)。

即光栅类;类图像精灵;

不能运行包含小写类名的程序吗?如果可能,有什么区别?

这是可能的,适当的,对于编译器没有区别。

这是对代码和其他程序员的不尊重。

不遵循 Java 编码约定会让您感到不舒服。

于 2012-08-14T06:55:32.190 回答
16

为什么 Java 类的第一个字母要大写?

这是经验丰富的 Java 程序员普遍遵守的约定。

不能运行包含小写类名的程序吗?

是的,有可能。也可以穿同一套衣服上班一个月。但是你也不会通过这样做来交任何朋友。

如果可能,有什么区别?

不同之处在于,如果您忽略约定,您的代码对其他人的可读性会大大降低。现在,如果你正在编写只有你自己才能阅读的代码,那么代码风格纯粹是你的问题。然而,在现实世界中,我们大多数人经常不得不阅读其他人编写的代码。如果你的代码读起来很痛苦,因为你选择忽略约定,不要指望人们会因此而表扬你。

坦率地说,在合理期望其他人需要阅读的情况下编写不可读的代码是反社会的。


我应该补充一点,这不仅仅是反社会的。事实证明,您可以通过忽略约定来燃烧自己。样式约定旨在与 Java 的标识符消歧规则结合使用;见JLS 6.5。如果您忽略样式规则,您可能会发现模棱两可的标识符(例如,可能是类名或变量名的标识符)以一种意想不到的方式消除歧义。最终结果将是(通常)难以理解的意外编译错误。

于 2012-08-14T07:38:32.710 回答
10

类的 Java 命名约定

  Classes: Names should be in CamelCase. 

尝试使用名词,因为类通常代表现实世界中的某些事物:

class Customer
 class Account 
于 2012-08-14T06:55:00.943 回答
7

这是java命名约定

于 2012-08-14T06:46:36.000 回答
6

只是命名约定。建议遵循。

于 2012-08-14T06:47:25.260 回答
5

这些不是规则,而是惯例。你可以自由地使用你想要的任何东西,你想要的方式,但是通过遵循约定,你可以确保其他开发人员会很快理解你的代码,因为很清楚什么是类,什么是属性,什么是方法等等。

类名应该是名词,大小写混合,每个内部单词的首字母大写。尽量保持你的类名简单和描述性。使用完整的单词——避免使用首字母缩写词和缩写词(除非缩写词比长格式更广泛地使用,例如 URL 或 HTML)。

http://www.oracle.com/technetwork/java/javase/documentation/codeconventions-135099.html#367

于 2012-08-14T06:52:06.827 回答
4

是 可以在 Java 中使用小写的类名。但是您应该遵守 Java 社区推荐的 Java 命名约定。

于 2012-08-14T07:01:27.460 回答
4

Java 编码和命名约定是为了代码的可维护性而制定的。遵循这些标准的代码将易于维护。另一个开发人员可以理解您在 java 代码中所做的工作。

摘自网络:

“不同的 Java 程序员可以有不同的风格和方法来编写程序。通过使用标准的 Java 命名约定,他们可以让他们自己和其他程序员更容易阅读他们的代码。Java 代码的可读性很重要,因为这意味着尝试花费的时间更少弄清楚代码的作用,留出更多时间来修复或修改它。”

于 2012-08-14T11:49:05.630 回答