java学习之路(3)- public class和class的理解

时间:2021-12-03 13:30:16

public class和class的区别:

1.一个.java源文件中可以定义多个class类,编译时,每个class类都应生成一个对应的.class文件。
2.一个*.java源文件中可以不用定义public class,但一个源文件中最多只能包含一个public class,多个时则报错。
3. 如果一个类声明的时候使用了public class进行了声明,则类名称必须与文件名称完全一致。
4.public class定义的是公共类,所以文件名必须与类名一致,其他类可以引入并使用其公共方法和属性。

新建文件A.java,
一个源文件包含多个class:

class A{}
class B{}
class C{}

可正确编译,则生成3个文件:A.class,B.class,C.class。

一个源文件包含多个public class:

public class A{}
public class B{}
class C{}

编译时会出错,原因是使用了public class进行了类声明,则类名称必须与文件名称完全一致,public class B{}也是公共类,也应当也命名为B.java的文件,因此会报错。

一个源文件只包含一个public class:

public class A{}
class B{}
class C{}

编译时正确。

以上是个人学习中的理解,如果大牛发现有错误或不对或理解有误,欢迎指正。