美文网首页
浅谈为什么一个java源文件中只能有一个public类?

浅谈为什么一个java源文件中只能有一个public类?

作者: Hiseico | 来源:发表于2019-04-18 16:18 被阅读0次

第一、只有一个public类:浅谈为什么一个java源文件中只能有一个public类?

  1. 每个编译单元(文件)只能有一个public 类。这么做的意思是,每个编译单元只能有一个公开的接口,而这个接口就由其public 类来表示。

  2. java程序的入口是main方法,所以被定为public的这个类里一定是含有main方法的类,而且该类的名称要和文件名一致,因为虚拟机开始要找main的。(同个源文件有多个公共类,编译器就找不到应该执行的main方法了)

  3. 你可以根据需要,往这个文件里面添加任意多个提供辅助功能的public 权限的类。但是如果这个编译单元里面有两个或两个以上的public 类的话,编译器就会报错。

  4. 在标准的java代码编写时,无论代码量多少,最好一个源文件里只有一个类或接口(接口也要单独写在一个源文件里),因为JAVA是面向对象的语言,每个类都是抽象的结果,所以每个类都要单独写在一个源文件里。

  5. 编译单元里面可以没有public 类,指的是没有公开的接口,但是可以在同一个包内访问的;public的意思是在包内包外均可访问。虽然这种情况不常见,但却是可以的。这时,你就能随意为文件起名字了。

第二、 public 类的名字必须和这个编译单元的文件名完全相同,包括大小写。

  1. 如果你不遵守,编译器又要报错了。
    首先Java是被解释执行的。它在运行时并不是将所有的class文件全都放到内存中。而是在遇到import的时候才去相应的文件目录找相应的class文件。
  2. 对于一个public类,它是可以被项目中任何一个类所引用的,只需在使用它前import一下它所对应的class文件即可。将类名与文件名一一对应就可以方便虚拟机在相应的路径(包名)中找到相应的类的信息。如果不这么做的话,就很难去找,而且开销也会很大。

相关文章

  • 浅谈为什么一个java源文件中只能有一个public类?

    第一、只有一个public类:浅谈为什么一个java源文件中只能有一个public类? 每个编译单元(文件)只能有...

  • java学习笔记

    基础语法: ①java源文件名必须和public类名相同,一个java文件中只能有一个public类 ②每个类都有...

  • Java 2

    一个源文件中只能有一个public类一个源文件可以有多个非public类源文件的名称应该和public类的类名保持...

  • 文件名、类和main函数的关系

    一、java文件名与类的关系 一个java源文件中(即一个.java文件中),最多只能有一个public类。 当有...

  • Java知识点

    1.在一个.java源文件中可以存在多个类,但是只能有一个使用public修饰,并且用public修饰的类名要和文...

  • JAVA自定义类《java核心技术卷I 4.3》

    1. 类定义形式 java简单类定义形式,如下: 在一个源文件中,只能有一个公有类(public修饰),但可以有任...

  • java基础

    1.一个".java"源文件中是否可以包括多个类(非内部类)?有什么限制可以有多个类,但只能有一个public的类...

  • Java散乱(一、面向对象)

    一个源文件中只能有一个声明为public的类,同时要求此类的类名与源文件名一致。 关键字:被java赋予特殊含义的...

  • java面试题汇总

    1、一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制? 可以。但只能有一个public修饰的...

  • Java_类

    一个文件中只能有一个public类,且java文件名必须与public类名字一致;可有多个class类 java中...

网友评论

      本文标题:浅谈为什么一个java源文件中只能有一个public类?

      本文链接:https://www.haomeiwen.com/subject/xyytgqtx.html