我们创建一个A.java的源代码文件。定义4个class
![89d5b33b2c5f4355dcfd0ae9dd615571.png](https://i-blog.csdnimg.cn/blog_migrate/2881b1c527f92d4ef8989dd4f1c5f4cb.png)
根据Java编译机制,打开DOS文件,javac命令编译A.java源文件。 编译成功
![b8860dba3e0ef35d7c8e35a44d5c744f.png](https://i-blog.csdnimg.cn/blog_migrate/b996450ed65c1abeed110f1530583d11.png)
结论得出:1 一个java源文件中可以定义多可class。
2 一个class会定义成一个XXX.class字节码文件,一个java源代码可能会生成多个XXX.class字节码文件。
3 一个java源文件当中public class不是必须的。
那么在A.java源代码文件中加上public class看看效果如何
![b4dd9a2af30c609c0d89669258c9ccd2.png](https://i-blog.csdnimg.cn/blog_migrate/bcbbc0113ccf03c176a9ab1e2cc2203f.png)
![03414ab1d899375630235a1cf7706cfe.png](https://i-blog.csdnimg.cn/blog_migrate/927bf946cbafdf3e9ad8be85a65c22b7.jpeg)
结论得出:4 一个java源文件当中定义public class的话,只能有一个,并且该类名称必须和java源文件名称一致。
紧接测试class
![d8c8cf5cdc06efd601d353353a8b54b8.png](https://i-blog.csdnimg.cn/blog_migrate/ad0fc40f2b6df83b0fb5c195df594bb6.jpeg)
javac命令编译源代码
![7ecfe9da4ab0132e4c48fac6c748467c.png](https://i-blog.csdnimg.cn/blog_migrate/29f13ff7986e94e640f976558d2babb7.png)
![5c18f7e44d89e2eeda7a1534b79c4d05.png](https://i-blog.csdnimg.cn/blog_migrate/45a14390c80c3c06dbba1e5e935b25d8.png)
java 命令运行.class文件
![69ff878100446911b261d9b39d597bc9.png](https://i-blog.csdnimg.cn/blog_migrate/dccbd90ede38eecec04d07de6701d3a0.jpeg)
结论得出:5 每个class中都可以编写main方法,都可以设定程序的入口。但是.class文件中必须有主方法,没有主方法会运行出现错误。如:上图class D