编译
通过javac编译java程序,会编译出一个后缀为class的文件,我们再通过java虚拟机(jvm)执行编译后的java程序。
在java中始终有一个main函数,它作为程序的入口,程序从这个入口开始执行一直到结束。
public class app{
public static void main(String[] args){
System.out.println("hi java");
System.out.println("Hello java");
}
}
cmd输入javac app.java
进行编译
执行后生成app.class文件
cmd输入java app
执行代码
发现一个问题,class名需要和文件名一样,编译出来的文件名也是这个class的名字,表示搞不定其中的含义。
初探java
发现javascript和java有很大的不同,java很多东西需要你事先写好来,比如下面这段代码
public class app{
public static void main(String[] args){
System.out.println("hi java");
int i = 3;
while(i>0){
i--;
System.out.println(i);
}
}
}
其中public static void main
这一句中有一个void
,表示没有返回值,而在javascript中,你想返回就返回,不想返回就不返回,一切由你自己决定。另外在java中并没有所谓的隐式转换,如下:
int i = 3;
while(i){
i--;
System.out.println(i);
}
这样子写是不行的,因为java在这里并不会将i转换成布尔值。
java这样做的话也有它的好处,就是使程序能够事先就知道你想表达什么,而不用费劲心思去猜你写的到底是什么,这样子的话,它可以在编译期间就找出大部分的错误,另外一点就是它的执行速度会更快。
代码相关
System.out. print
与System.out. println
的区别在于,前者在末尾不会插入换行,而后者在末尾会插入一个换行。