- Java 開發從入門到精通(第2版)
- 扶松柏 王洋 陳小玉
- 2321字
- 2020-04-14 15:06:03
2.6 技術解惑
2.6.1 遵循Java源文件的命名規則
Java中的命名規則有很多,例如變量命名規則和類命名規則等。下面講解的是Java源文件的命名規則。在編寫Java程序時,源文件的名稱不能隨便起,需要遵循下面兩條規則。
? Java源文件的后綴必須是“.java”,不能是其他文件后綴名。
? 一般來說,可以任意命名Java源文件,但是當Java程序代碼中定義了一個public類時,該源文件的主文件名必須與該public類(也就是說,該類在定義中使用public關鍵字來修飾)的類名相同。由此可以得出一個結論:因為Java源文件的文件名必須與public類的類名相同,所以一個Java源文件里最多只能定義一個public類。
根據上述規則,我們可以得出命名程序文件的如下3個建議。
? 一個Java源文件只定義一個類,不同的類使用不同的Java源文件定義。
? 將每個Java源文件中單獨定義的類都定義成public。
? 保持Java源文件的主文件名與該Java源文件中定義的public類同名。
2.6.2 忽視系統文件的擴展名
有很多初學者經常犯一個錯誤,即在保存Java文件時經常保存成形如“*.java.txt”格式的文件名,因為這種格式的文件名從表面看起來太像“*.java”了,所以經常會引發錯誤。要想糾正這個錯誤,我們可以修改Windows系統的默認設置。因為Windows系統的默認設置是“隱藏已知文件類型的擴展名”,所以我們只需要取消勾選這個選項即可,如圖2-44所示。

圖2-44 取消勾選“隱藏已知文件類型的擴展名”選項
2.6.3 環境變量的問題
Java JDK經過幾年的發展,已經發展到現在的JDK 10系列。新的JDK更加成熟,速度也更快。但是往往程序員總是難以忘記以前版本的一些特點和用法,經常會不自覺地在新版本中按照舊版本的方式進行操作。例如最常見的就是環境變量問題,2.1.2節已經介紹了設置環境變量的問題。其實對于開發純Java項目來說,如果使用的是JDK 1.5以上版本,則完全不用畫蛇添足般地設置環境變量。
設置CLASSPATH環境變量會比較麻煩,在設置CLASSPATH環境變量后,Java解釋器會在當前路徑下搜索Java類,例如,在First.class文件所在路徑下執行java First命令將沒有任何問題。但如果設置了CLASSPATH環境變量,Java解釋器只在CLASSPATH環境變量指定的系列路徑下搜索Java類,這就容易出現問題。
在當今很多教科書和資料中,都提到在CLASSPATH環境變量中添加dt.jar和tools.jar這兩個文件,所以很多初學者會將CLASSPATH環境變量的值設置為如下形式。
D:\Java\jdkl.10.0\lib\dt.jar; D:\Java\jdkl.10.0\lib\tools.jar
這樣做會導致Java解釋器不在當前路徑下搜索Java類,此時如果在文件First.class所在路徑下執行java First命令,就會出現圖2-45所示的錯誤提示。

圖2-45 錯誤提示
造成上述錯誤的原因是找不到類定義,這是由CLASSPATH環境變量設置不正確造成的。所以在此建議廣大讀者,在設置CLASSPATH環境變量時一定不要忘記在CLASSPATH環境變量中增加“.”,以強制Java解釋器在當前路徑下搜索Java類。
2.6.4 大小寫的問題
Java語言是嚴格區分大小寫的,但是很多初學者對大小寫問題往往都不夠重視。例如,有的讀者編寫的Java程序里的類是“first”,但在運行Java程序時使用的是“java First”的形式。所以在此提醒讀者必須注意,Java程序中的First和first是不同的,必須嚴格注意Java程序中大小寫的問題。在此建議廣大讀者,在按照書中實例程序編寫Java代碼時,必須嚴格注意Java程序中每個單詞的大小寫,不要隨意編寫,例如class和Class是不同的兩個詞,class是正確的,但如果寫成Class,則程序無法編譯通過。這是因為Java程序里的關鍵字全部是小寫的,無須大寫任何字母。
2.6.5 main()方法的問題
如果需要用Java解釋器直接運行一個Java類,則這個Java類必須包含main()方法。在Java中必須使用public和static來修飾main(),并且必須使用void來聲明main()方法的返回值,而且main()方法的形參只能是一個字符串數組,而不能是其他形式的參數。對于main()方法來說,修飾它的修飾符public和static的位置可以互換,但其他部分則是固定的。
在定義main()方法時也需要注意大小寫的問題,如果不小心把方法名的首字母寫成了大寫,編譯時不會出現任何問題,但運行程序時將引發錯誤。
2.6.6 注意空格問題
空格問題是初學者很容易犯的一個錯誤,Windows系統中的很多路徑都包含空格,例如C盤中的“Program Files”,而這個文件夾恰好是JDK的默認安裝路徑。如果CLASSPATH環境變量包含的路徑中含有空格,則可能會引發錯誤。所以推薦大家在安裝JDK和Java相關程序/工具時,不要安裝在包含空格的路徑里,否則可能引發錯誤。
2.6.7 到底用不用IDE工具
作者對初學者的建議是:在初期盡量不要使用IDE工具,但現在是追求速成的年代,大多數人都希望用最快的速度掌握Java技術。其實市面上的IDE工具居多,除了Eclipse、Jbuilder和NetBeans之外,還有IBM提供的WSAD、JetBrains提供的IntelliJ IDEA、IBM提供的VisualAge、Oracle提供的JDeveloper、Symantec提供的Visual Cafe以及BEA提供的WorkShop,每個IDE都各有特色、各有優勢。如果從工具學起,勢必造成對工具的依賴,當換用其他IDE工具時會變得極為困難。而如果從Java語言本身學起,把Java語法和基本應用熟記于心,到那時再使用IDE工具便能得心應手。
在我們日常使用的Windows平臺上可以選用記事本來編碼,如果嫌Windows下記事本的顏色太單調,可以選擇使用EditPlus、UltraEdit、VS Code和sublime text等工具。
如果實在要用IDE工具,例如Eclipse,則建議純粹將它作為一款編輯器來用,所有代碼要靠自己一個一個字符敲入來完成,而不是靠里面的幫助文檔和操作菜單來完成編碼工作。
2.6.8 區分JRE和JDK
對于很多初學者來說,對JDK和JRE兩者比較迷糊,不知道它們之間到底有什么異同。
? JRE:表示Java運行時環境,全稱是Java Runtime Environment,是運行Java程序的必需條件。
? JDK:表示Java標準版開發包,全稱是Java SE Development Kit,是Oracle提供的一套用于開發Java應用程序的開發包,提供編譯、運行Java程序所需的各種工具和資源,包括Java編譯器、Java運行時環境以及常用的Java類庫等。
Oracle把Java分為Java SE、Java EE和Java ME,而且為Java SE與Java EE分別提供JDK和Java EE SDK(Software Development Kit)兩個開發包。如果讀者只學習Java SE的編程知識,可以下載標準的JDK;如果學完Java SE之后還需要繼續學習Java EE相關內容,就必須下載Java EE SDK。因為Java EE SDK版本中已經包含最新版的JDK,所以在安裝的Java EE SDK中已經包含JDK。
一般來說,如果我們只是要運行Java程序,可以只安裝JRE,而無須安裝JDK。但是如果要開發Java程序,則應該安裝JDK。安裝好JDK之后就自然包含JRE了,也可以運行Java程序。
- Boost.Asio C++ Network Programming(Second Edition)
- 手機安全和可信應用開發指南:TrustZone與OP-TEE技術詳解
- Java EE框架整合開發入門到實戰:Spring+Spring MVC+MyBatis(微課版)
- HTML5+CSS3基礎開發教程(第2版)
- Python機器學習編程與實戰
- Bootstrap 4:Responsive Web Design
- 大學計算機基礎實驗指導
- C++ Application Development with Code:Blocks
- JavaScript+jQuery網頁特效設計任務驅動教程
- 3ds Max印象 電視欄目包裝動畫與特效制作
- 零基礎學C語言(升級版)
- Python 快速入門(第3版)
- Visual C++程序設計全程指南
- C# 7 and .NET Core 2.0 Blueprints
- JavaScript程序設計實例教程(第2版)