今天,我们来写一段Java程序。然后看看Java程序是如何执行的,以及Java新手小白遇到的问题和解决办法。
一、HelloWorld的编写
① 新建一个XXX.java (文件的扩展名显示出来)
②编写代码 ,以类为单位编写,编写入口函数/方法
public class HelloWorld{ // 类名最好与文件名一致
public static void main(String[] args){ // 程序的入口
System.out.println("HelloWorld");// 以分号结尾
}
}
③通过 javac命令完成 编译操作(需要写java文件的完整路径)
![Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习 Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习](https://image.shishitao.com:8440/aHR0cHM6Ly9iYnNtYXguaWthZmFuLmNvbS9zdGF0aWMvTDNCeWIzaDVMMmgwZEhCekwzQnBZek11ZW1ocGJXY3VZMjl0THpnd0wzWXlMVFppWkdNeVltRXhaalU0WVROak16Z3daR0ZqWldFek1qVmtOVEUxTW1SaVgyaGtMbkJ1Wnc9PS5qcGc%3D.jpg?w=700)
![Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习 Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习](https://image.shishitao.com:8440/aHR0cHM6Ly9iYnNtYXguaWthZmFuLmNvbS9zdGF0aWMvTDNCeWIzaDVMMmgwZEhCekwybHRaekl3TVRndVkyNWliRzluY3k1amIyMHZZbXh2Wnk4eE5qUXdOVGs0THpJd01Ua3dOaTh4TmpRd05UazRMVEl3TVRrd05qRTNNakUxTWpBMk5ESTVMVGsxTVRjNU9EYzVOeTV3Ym1jPS5qcGc%3D.jpg?w=700)
④运行java程序, 运行 .class 文件/字节码文件 通过 java 命令完成
![Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习 Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习](https://image.shishitao.com:8440/aHR0cHM6Ly9iYnNtYXguaWthZmFuLmNvbS9zdGF0aWMvTDNCeWIzaDVMMmgwZEhCekwzQnBZekl1ZW1ocGJXY3VZMjl0THpnd0wzWXlMV1F6TjJSbFlUY3pNRFk0WXpFMk9HVmtaamt4TUdSa01Ua3dOekpoT1RBNFgyaGtMbkJ1Wnc9PS5qcGc%3D.jpg?w=700)
执行如下命令:
![Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习 Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习](https://image.shishitao.com:8440/aHR0cHM6Ly9iYnNtYXguaWthZmFuLmNvbS9zdGF0aWMvTDNCeWIzaDVMMmgwZEhCekwzQnBZekl1ZW1ocGJXY3VZMjl0THpnd0wzWXlMVGt3WWpjMFkyVmtNMkl5TkRJNU1EZzJOR05pWW1ZMlpqTmhZVEl5TkRZd1gyaGtMbkJ1Wnc9PS5qcGc%3D.jpg?w=700)
其中:
-classpath /-cp是用来指定路径。
若不指定则java会从当前目录找,找不到去java的lang包找。
若指定路径如:-classpath /-cp .;c:\ 文件名
则java命令会先从当前目录开始找,找不到去指定的C目录找文件名 ,若还是找不到就再去java的lang包下找
. 代表当前路径
; 分隔路径
切记:在路径和文件名之间需要空格分隔
二、程序解释:
A: Java程序的最基本单位是类,所以我们要定义一个类。
class 代表类
格式:class 类名
举例:class HelloWorld{}
B:在类中写内容的时候,用大括号括起来。
C:Java程序要想执行,必须有main方法。
格式:public static void main(String[ ] args){}
D:要指向那些东西呢,也用大括号括起来。
E:输出语句: System.out.println(“输出的内容”);
注:一个class 编译后会对应一个 .class文件,一个源文件当中可以有多个class,当有公共类(public)存在时文件名必须和 公共类名(public 修饰类的类名)一致。因此一个源文件当中最多只能有一个公共类
三、Java程序的开发执行流程:
A:编写java源程序(.java) 源文件/源代码
B:通过javac命令编译生成.class文件(字节码文件)
C:通过java命令运行.class文件(字节码文件)
四、常见问题(必须牢记掌握)
1. 扩展名被隐藏
如何找到:工具--文件夹选项--查看--去除隐藏扩展名的那个勾勾
![Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习 Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习](https://image.shishitao.com:8440/aHR0cHM6Ly9iYnNtYXguaWthZmFuLmNvbS9zdGF0aWMvTDNCeWIzaDVMMmgwZEhCekwzQnBZek11ZW1ocGJXY3VZMjl0THpnd0wzWXlMV1kzTURFMk5XUTBOamhpWVdVNVl6TXdNREUxWVRoak16RXlaVE01T1dNMlgyaGtMbkJ1Wnc9PS5qcGc%3D.jpg?w=700)
2. 我们现在一般文件名称和类名一致。
.java文件当中的类名(class 后面跟的名称)经过编译过后,会将类名作为.class文件的文件名称。
但是,注意: javac后面跟的是文件名+扩展名
![Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习 Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习](https://image.shishitao.com:8440/aHR0cHM6Ly9iYnNtYXguaWthZmFuLmNvbS9zdGF0aWMvTDNCeWIzaDVMMmgwZEhCekwzQnBZekl1ZW1ocGJXY3VZMjl0THpnd0wzWXlMV0kzWldVeE1tVTRZbUkyTXpGalptVmlNR1psT0dGbFpEZzFaalEwTW1SalgyaGtMbkJ1Wnc9PS5qcGc%3D.jpg?w=700)
java后面跟的类名不带扩展名
3. Java语言严格区分大小写
![Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习 Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习](https://image.shishitao.com:8440/aHR0cHM6Ly9iYnNtYXguaWthZmFuLmNvbS9zdGF0aWMvTDNCeWIzaDVMMmgwZEhCekwzQnBZek11ZW1ocGJXY3VZMjl0THpnd0wzWXlMVGxtTUdRMVpURXhOek16TW1VM1pERm1PREUxTVRnMVpEazJObVpoWVRnelgyaGtMbkJ1Wnc9PS5qcGc%3D.jpg?w=700)
![Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习 Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习](https://image.shishitao.com:8440/aHR0cHM6Ly9iYnNtYXguaWthZmFuLmNvbS9zdGF0aWMvTDNCeWIzaDVMMmgwZEhCekwybHRaekl3TVRndVkyNWliRzluY3k1amIyMHZZbXh2Wnk4eE5qUXdOVGs0THpJd01Ua3dOaTh4TmpRd05UazRMVEl3TVRrd05qRTNNakUxTXpJeU9ESTBMVEUyTlRRNU5ETTRPVFF1Y0c1bi5qcGc%3D.jpg?w=700)
4. 单词不要写错
![Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习 Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习](https://image.shishitao.com:8440/aHR0cHM6Ly9iYnNtYXguaWthZmFuLmNvbS9zdGF0aWMvTDNCeWIzaDVMMmgwZEhCekwzQnBZekV1ZW1ocGJXY3VZMjl0THpnd0wzWXlMV0l6WVRrNVpEUXdNR1l4T1dZME1EUTRZell6WVRnNU1HUmxOV1prTVRGaVgyaGtMbkJ1Wnc9PS5qcGc%3D.jpg?w=700)
5. 见到非法字符:肯定是中文问题。
我们写程序要求标点符号必须全部是英文状态。
![Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习 Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习](https://image.shishitao.com:8440/aHR0cHM6Ly9iYnNtYXguaWthZmFuLmNvbS9zdGF0aWMvTDNCeWIzaDVMMmgwZEhCekwzQnBZekl1ZW1ocGJXY3VZMjl0THpnd0wzWXlMV1U0T0RBellUUmhZakptWkRSaFpXRm1ORGszTldZM09UaGtabVJoTmprMFgyaGtMbkJ1Wnc9PS5qcGc%3D.jpg?w=700)
6. 括号的配对问题。
一般来说,括号都是成对出现的。
7. 在类 HelloWorld 中找不到主方法
![Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习 Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习](https://image.shishitao.com:8440/aHR0cHM6Ly9iYnNtYXguaWthZmFuLmNvbS9zdGF0aWMvTDNCeWIzaDVMMmgwZEhCekwzQnBZek11ZW1ocGJXY3VZMjl0THpnd0wzWXlMV0ZtWW1VME5HVXpOalUzWkRreVpqRTFNV1ptTURjMU1ESmlZamt4T0dZeFgyaGtMbkJ1Wnc9PS5qcGc%3D.jpg?w=700)
![Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习 Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习](https://image.shishitao.com:8440/aHR0cHM6Ly9iYnNtYXguaWthZmFuLmNvbS9zdGF0aWMvTDNCeWIzaDVMMmgwZEhCekwybHRaekl3TVRndVkyNWliRzluY3k1amIyMHZZbXh2Wnk4eE5qUXdOVGs0THpJd01Ua3dOaTh4TmpRd05UazRMVEl3TVRrd05qRTNNakUxTXpVek1UTTNMVEkxTWpjek9USTVOeTV3Ym1jPS5qcGc%3D.jpg?w=700)
8. 忘记书写语句后面的分号
![Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习 Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习](https://image.shishitao.com:8440/aHR0cHM6Ly9iYnNtYXguaWthZmFuLmNvbS9zdGF0aWMvTDNCeWIzaDVMMmgwZEhCekwzQnBZek11ZW1ocGJXY3VZMjl0THpnd0wzWXlMVEV5T0RZME1UWTNaV1EyTURGaE1tUmhOMk01WXpBeVltVmtZV05sWVRRM1gyaGtMbkJ1Wnc9PS5qcGc%3D.jpg?w=700)
![Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习 Java程序的编写与执行、Java新手常见问题及解决方法|乐字节Java学习](https://image.shishitao.com:8440/aHR0cHM6Ly9iYnNtYXguaWthZmFuLmNvbS9zdGF0aWMvTDNCeWIzaDVMMmgwZEhCekwybHRaekl3TVRndVkyNWliRzluY3k1amIyMHZZbXh2Wnk4eE5qUXdOVGs0THpJd01Ua3dOaTh4TmpRd05UazRMVEl3TVRrd05qRTNNakUxTURRME5qUTJMVFl5T1RZeE56ZzNOUzV3Ym1jPS5qcGc%3D.jpg?w=700)