java中public class与class的区别详解
程序员文章站
2023-12-19 10:52:10
在编写类的时候可以使用两种方式定义类:public class定义类:class定义类:如果一个类声明的时候使用了public class进行了声明,则类名称必须与文件名称...
在编写类的时候可以使用两种方式定义类:
public class定义类:
class定义类:
如果一个类声明的时候使用了public class进行了声明,则类名称必须与文件名称完全一致。
范例:定义一个类(文件名称为:hello.java)
复制代码 代码如下:
public class hellodemo{ //声明一个类,类名称的命名规范:所有单词的首字母大写
public static void main(string args[]){ //主方法
system.out.println("helloworld!!!"); //系统输出,在屏幕上打印
}
};
此类使用public class声明,类名称是hellodemo,但是文件名称hello.java,所以,此时编译时会出现如下问题:
复制代码 代码如下:
hello.java:1 类 hellodemo 是公共的,应在名为hellodemo.java文件中声明
public class hellodemo{ //声明一个类,类名称的命名规范:所有单词首字母大写
1、错误
以上的错误提示表示:因为使用的是public class声明,所以类名称应该与文件名称完全一致,即应该使用"hellodemo.java"表示类的名称。
如果类的声明使用了class的话,则类名称可以与文件名称不一致,但是执行的时候肯定执行的是生成后的名称。
范例:有如下代码(文件名称为:hello.java)
复制代码 代码如下:
class hellodemo{
public static void main(string args[]){
system.out.println("helloworld!!!");
}
};
文件名称为hello.java,文件名称与类名称不一致,但是因为使用了class声明所以,此时编译不会产生任何错误,但是生成之后的*.class文件的名称是和class声明的类名称完全一致的:hellodemo.class
执行的时候不能再执行java hello,而是应该执行javahellodemo
在一个*.java的文件中,只能有一个public class的声明,但是允许有多个class的声明
复制代码 代码如下:
public class hello{
public static void main(string args[]){
system.out.println("helloworld!!!");
}
};
class a{};
class b{};
在以上的文件中,定义了三个类,那么此时程序编译之后会形成三个*.class文件。