Java 中的一些注意事项
2019-09-27 本文已影响0人
Vector_Wan
这篇文章记录一些 Java 中需要注意的一些小问题,
1. 如果一个源码文件中有 n 个类,编译之后得到 n 个 .class 文件
话不多说直接实验,我把 Area.java 中的大部分代码删掉了,框架是这样的:
class Area{
public static void main(String [] args){
...
}
}
class Shape{
}
class Rect extends Shape{
}
class Circle extends Shape{
}
编译:
![](https://img.haomeiwen.com/i17584033/d9c08d8d8aaabb88.png)
四个类一个源码文件,编译结果产生了四个 .class 文件。
2. 源文件中最多只能有一个类为 public
我们首先只给 Area 类前面加一个 public 编译成功,然后在 Shape 前面也加一个 public ,报错,信息如图。
![](https://img.haomeiwen.com/i17584033/cb9fe4983d9748a4.png)
3. Public 修饰的类必须 类名等于文件名
我们修改一下上面文件的名字,在编译一下看看,报错。
![](https://img.haomeiwen.com/i17584033/98a2ab6855981fd2.png)
4. 类可以不是 public 类
这没啥说的,最开始就没有类是 public 的。
5. 解释器启动文件的时候启动类里面有 main 方法的字节码文件。
6. 主方法不一定写在 public 类中,但是习惯上是这样。
7. 如果一个 Java 文件中包含了其他 Java 文件中的类,可以直接编译这个文件,编译的时候会自动全部编译。但是如果被引用类不是一个 public 类的话,我们需要手动编译,然后再编译外层类。
比方说我在 Area.java 文件中只保留了一个带有主函数的类,其余都放到的 hello1.java 文件中,直接编译 Area.java 就好了。
![](https://img.haomeiwen.com/i17584033/31db949f1b65d160.png)
![](https://img.haomeiwen.com/i17584033/abd85a8fd066fde7.png)
8. 在使用一个类的时候我们可以没有这个类的源代码,只要有 .class 文件也是可以的,实际上在使用一个类的时候使用的是它的自解码文件。
我们将第 7 个问题中的 hello1.Java 和 Area.java 删掉,再次编译一下看看。
正常编译。