第四天学习内容为快速入门,用subtime text3编写第一个java程序hello world
打开subtime text3新建文件,保存到Dcode文件夹,命名为Hello.java
public class Hello{
public static void main(String[] args){
System.out.println("hello world!");
}
}
解释说明:
1、public class Hello表示Hello是一个类,是一个public(共有)的类,
2、Hello{}表示一个类的开始和结束
3、public static void main(String[] args)为固定语句,表示一个主方法,即我们程序的入口,后面的{}表示方法的开始和结束
4、System.out.println("hello world~");表示输出hello world~到屏幕上
5、;表示语句结束了
6、如代码中有中文,则将文件编码设置为GBK(文件》设置编码),重新保存
编译:在D盘code路径内输入cmd进入控制台,输入javac Hello.java,进行编译,文件夹内会有一个Hello.class的文件,再输入java.Hello进行运行,不能是java.Hello.class,不然会提示“找不到或无法加载主类 Hello.class”,因为java运行的是Hello这个类,而不是Hello.class这个类。
运行原理示意图
课堂练习1
代码如下
public class ktlx1{
public static void main(String[] args){
System.out.println("小高 is studying java!");
}
}
在执行中遇到以下几个问题
1.编译时将类的名字输错,将ktlx1输成ktxl1,系统提示:错误: 找不到文件: ktxl1.java
2.将public static void main(String[] args)错输为public static main void(String[] args),系统提示错误: 需要<标识符>
public static main void(String[] args){
3.完成编译后在运行时,漏输,将ktlx1输成ktlx,系统提示:找不到或无法加载主类 ktlx
.java为源文件,.class为字节码文件
运行的本质就是将.class文件装载到jvm执行
对修改后的Hello.java源文件需要重新编译,生成新的class文件后再进行执行才能生效
开发细节
1、源文件的基本组成部分是类(class),如上述程序中的Hello类
2、java程序的执行入口是main()方法,有固定的书写模式,public static void main(String[] args){...}
3、java语言严格区分大小写
4、java方法由一条一条语句构成,每个语句以分号;结束
5、大括号都是成对出现的,所以在写代码的时候先把大括号写好{}(写代码的好习惯)
6、一个源文件中只有一个public类,别的类不限。eg
上述代码中增加了两个class,编译后就会出现这两个类对应的.class文件
7、如果源文件包含一个public类,则文件必须以该public类的名字命名,如上述代码中有三个class,public class为Hello,则该文件名必须是Hello.java
8、一个源文件中只有一个public类,别的类不限。非public类中也可以也可以有main方法,然后在控制台指定运行非public类,这样入口方法就是非public的main方法。eg,在第六条中的dog和tiger类中输入main方法。例如
保存后编译,此次出现两个问题
Q1;结束时的分号用的中文输入法,编译时报错 非法字符: 'uff1b',改成英文输入法就好了
Q2:讲main方法中的String错打成Sting,报错找不到符号
一个public class,两个非public class分别运行,得到的结果如下



