• java之public class和class声明区别详解 (转)


    在编写类的时候可以使用两种方式定义类:
        public class定义类:
        class定义类:
        如果一个类声明的时候使用了public class进行了声明,则类名称必须与文件名称完全一致。
    范例:定义一个类(文件名称为:Hello.java)
    public class HelloDemo{    //声明一个类,类名称的命名规范:所有单词的首字母大写
        public static void main(String args[]){    //主方法
            System.out.println("Hello World!!!");    //系统输出,在屏幕上打印
        }
    };
    此类使用public class声明,类名称是Hello Demo,但是文件名称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("Hello World!!!");
        }
    };
    文件名称为Hello.java,文件名称与类名称不一致,但是因为使用了class声明所以,此时编译不会产生任何错误,但是生成之后的*.class文件的名称是和class声明的类名称完全一致的:HelloDemo.class
    执行的时候不能再执行java Hello,而是应该执行java HelloDemo

    在一个*.java的文件中,只能有一个public class的声明,但是允许有多个class的声明
    public class Hello{
        public static void main(String args[]){
            System.out.println("Hello World!!!");
        }
    };
    class A{};
    class B{};

    在以上的文件中,定义了三个类,那么此时程序编译之后会形成三个*.class文件。

    转自:http://hp.agwcn.com/news/nlgle/2010/8/8/1088154284K8C3A4J5522DE240.html

  • 相关阅读:
    Trying to reload asset from disk that is not stored on disk
    学习,再学习!
    关于webQQ3.0
    java 之 枚举
    部队的日子
    大兵
    关于webQQ3
    Ubuntu下gedit的java编译设置
    晒晒
    chrome中行网银插件(Linux下可用,可以淘宝支付宝)
  • 原文地址:https://www.cnblogs.com/newgreen/p/1799925.html
Copyright © 2020-2023  润新知