- 零基礎學Java(第5版)
- 黃傳祿 常建功 陳浩
- 568字
- 2020-06-17 18:13:08
2.5 常見疑難解答
2.5.1 Java文件擴展名是否區分大小寫
如果用記事本寫了一個很短的程序,如下所示:
01 //定義一個FirstJava類 02 public class FirstJava{ 03 //程序執行的入口,每個Java應用程序都有一個main()函數 04 public static void main(String args[]){ //主方法 05 //在DOS窗口打印一行字符串:Hello Java!!! 06 System.out.println(“Hello!!!”); 07 } 08 }
將這個文件保存在D盤根目錄下,名字為Hello.Java,那么在DOS中的D盤根目錄下執行javac命令,根本就不會編譯這個文件。將擴展名改為小寫的Hello.java,則再執行javac命令,就可以編譯通過了。所以說Java文件的擴展名區分大小寫。
2.5.2 Javac xxx.java順利通過,但Java xxx顯示“NoClassDefFoundError”
Java命令在一定的范圍(ClassPath)內搜索要用的class文件,但是未能找到。遇到這類問題,首先請確認沒有錯誤地輸入成java xxx.class;其次,檢查ClassPath環境變量,如果設置的該變量沒有包含“.”(代表當前目錄),就會遇到這個問題,處理的方法就是在ClassPath環境變量中加入Java命令的當前目錄這一項。
2.5.3 導致錯誤“Exception in thread main java.lang.NoSuchMethodError:main”的原因
首先,在程序中每個Java文件有且只能有一個public類,這個類的類名必須與文件名的大小寫完全一樣;其次,在要運行的類中,有且只能有一個“public static void main(String[]args)”方法,這個方法就是主運行程序。
根據上面的這種Java結構,當遇到Path問題時,操作系統會在一定的范圍(Path)內搜索javac.exe。如果沒有找到,那么編輯操作系統環境變量,新增一個“JAVA_HOME”變量,設為JDK的安裝目錄,再編輯Path變量,加上一項“%JAVA_HOME%\bin”,然后關閉當前DOS窗口,再新開一個DOS窗口,就可以使用Javac和Java命令了。
推薦閱讀
- Software Defined Networking with OpenFlow
- UML和模式應用(原書第3版)
- Flask Blueprints
- Mastering JavaScript Object-Oriented Programming
- Magento 2 Theme Design(Second Edition)
- Practical Data Science Cookbook(Second Edition)
- Java程序設計
- Symfony2 Essentials
- Java:High-Performance Apps with Java 9
- Mastering ArcGIS Enterprise Administration
- Java EE企業級應用開發教程(Spring+Spring MVC+MyBatis)
- 軟件測試綜合技術
- C++ Fundamentals
- PHP 7從零基礎到項目實戰
- HTML5+CSS3+jQuery Mobile APP與移動網站設計從入門到精通