最简单的编程是如何编写的?

一直不明白代码是如何编写的,总是摸不着头脑,感觉自己什么都不知道

看视频+看书。

慢慢熟悉,先看基础,从HelloWorld开始,可以看菜鸟教程

代码是如何编写的?这需要你了解代码的语法等等,不过,在此之前,你还需要知道代码是怎么运行的,它的运行机制是什么。拿个最简单的HelloWorld举例:

public class HelloWorld
{
    public static void main(String[] args)
    {
        System.out.println("HelloWorld");
    }
}

运行代码,程序最终输出了HelloWorld
那么,在程序输出HelloWorld时,它干了什么?在程序还没有输出HelloWorld时,虚拟机又干了什么呢?在程序成为字节码文件前(.class文件),编译器又干了什么呢?
OK,我们来捋一下这个HelloWorld程序的运行过程。
1.你编写好代码,通过javac命令将代码交给编译器编译成.class文件
在这个过程中,编译器首先检查这个文件的内容。在确保你创建好类后(并且类名和文件名一致),编译器开始查看主方法(main)中的代码。看看你调用了什么,有没有语法错误等等。等编译器确保整个文件无任何语法错误和调用错误时(注意,是语法或者调用上的错误),编译器开始编译。将你的java源文件变成带.class后缀的字节码文件。
2.javac命令结束,你很幸运,你的代码没出现莫名奇妙的bug。之后,你使用java命令启动程序
java命令开始执行。jdk安装包下的java.exe程序开始工作。不过在此之前,它需要确认你的文件中拥有main方法。检查有没有main方法的工作不是编译器的工作,然后在确认你的代码内有main方法后,它就将编译后的.class文件提交给虚拟机运行,并监视虚拟机的行为。一旦虚拟机抛出了一个错误或者异常,如果你的代码没有捕获这个错误或异常。java.exe程序就会将虚拟机的进程终止掉。并在终端打印一个错误和异常,以及出现这个异常时虚拟机正在执行的代码行。一般来说只要正常通过编译不会出现错误的情况,顶多虚拟机抛出异常。不过这里有个例外。如果你的java文件的第一行是package语句,那么虚拟机执行这个带有package语句的.class字节码文件时就会出现一个未找到类的错误。目前我也不知道为啥会出现这个错误。这个package语句能通过编译。但是不能通过运行(仅在命令终端运行java文件会出现这种错误。在IDEA等集成开发环境中运行package语句不会造成任何影响)。当然,如果你的代码没有任何错误。虚拟机就执行它。这里我们回到那个HelloWorld程序上。虚拟机执行main方法内的语句。System.out.println是调用了System.out对象中的println方法,这个方法打印出了HelloWorld这个字符串,从而出现了你在控制台上看到的那行HelloWorld
OK,你已经了解了计算机是如何执行java程序的,反过来,我们就得到了代码的编写方法:
1.确保文件中拥有类名。通过上述文字,我们知道。编译器会首先查看你的文件有没有类。如果没有类,就抛出一个错误。并且,你需要确保你的类名与文件名一致。
2.如果文件要单独运行(类似于上面的HelloWorld程序),则需要一个main方法。main方法是程序执行语句的基础,但在类中并不是一定要有。打个比方,如果你编写了一个Hello类,里面没有main方法只是有一个sy方法,这个方法是提供给其他继承这个类的类或者其他这个类的对象使用的。由于这个类本身并不输出任何信息,其中的方法只是提供给其他类使用。所以这个时候这个类在编译时不会有任何报错。不过在单独用java命令运行时,会出现报错,因为里面没有main方法。记住,如果想让文件单独运行,就必须让他拥有一个Main方法,来看下面的图片:

img


可以看到,一个没有main方法的程序通过了javac的编译,但是没通过java命令的运行检查环节。前面说过,类中不一定要有main,但是如果你要让这个类单独运行,那就必须要有main
3.确保文件中有main方法后,你就可以在main里面编写代码了。剩下的部分只是语法和使用的问题。这里不再讲述
OK,以上就是代码的运行过程以及如何编写代码。如果有帮助,请采纳,谢谢