当前位置:首页 » 编程软件 » java编译单元

java编译单元

发布时间: 2023-02-04 03:37:42

㈠ 文件名中,两类相+怎么写

java保存的文件名必须与类名一致;
2.如果文件中只有一个类,文件名必须与类名一致;
3.一个Java文件中只能有一个public类;
4.如果文件中不止一个类,文件名必须与public类名一致;
5.如果文件中不止一个类,而且没有public类,文件名可与任一类名一致。

当编写一个Java源代码文件时,此文件通常被称为编译单元(有时也称为转译单元)。每个编译单元都必须要有一个后缀为.java,而在编译单元内测可以 有一个public类,该类的名称必须与文件名称相同(包括大小写,但不包括文件的后缀名.java)。每个编译单元只能有一个public类,否则编译 器就不会接受。如果在该编译单元之中还有额外的类的话,那么在包之外的世界是无法看见这些类的,这是因为他们不是public类,而且他们主要用来为主要 public类提供支持。

\1. 每个编译单元(文件)都只能有一个public类。这表示,每个编译单元都有单一的公共接口,用public类来表现。该接口可以按要求包含众多的支持包访问权限的类。如果在某个编译单元内有一个以上的public类,编译器就会给出出错信息。

\2. public类的名称必须完全与含有该编译单元的文件名相匹配,包括大小写。所以对于Widget而言,文件的名称必须是Widget.java,而不是widget.java或WIDGET.java。如果不匹配,同样将得到编译时错误。

\3. 虽然不是很常用,但编译单元内完全不带public类也是可能的。这种情况下,可以随意对文件命名。(尽管随意命名会使得人们在阅读和维护代码时产生混淆。)

一个Java文件可以有多个类作为内部类/Adapter类/其它类,但是只能有一个public类,且类名必须和文件名一致。这是这类语言的一个不好的地方。

在现实情况中,经常有一些很小的类由几个类共同需要,因此无法作为内部类,而且接口关系必须设置为public,这样就导致了大量很小的.Java程序,每个都只有几百字节。

这类语言的另一个问题是一个类的所有实现的方法都必须包含在同一个文件中。在swing应用程序中,经常导致长达一两百K字节的源程序,行数达到三四千行,搞得JBuilder奇慢无比。

一个 .java 文件,可以有多个类,但是文件名只能有一个,用哪一个类名来充当文件名呢?其实文件名是无所谓的,因为将来用 javac 进行编译的时候,最终会生成多个 .class 文件,每一个类对应个 .class 文件。运行时只要运行对应的 .class 文件就可以了,这时 .java 文件就显得没什么用了( 运行时不需要 ),那还管它叫什么名字。

但是当你的类被 public 修饰时,此时文件名必须和该类保持一致(例如 public class A{} 只能放在 A.java 文件中,不然在用 javac 编译时会提示错误:类 A 是公共的,应在名为 A.java 的文件中声明)。也就是说在同一个 .java 文件中,不应该出现2个或2个以上的 public class 。

如果有一个public class类,就应该让文件名和此类名相同;那如果没有呢,即所有的 class 都没有修饰符,那么可以给该文件随便起名字,甚至可以不和任意一个类同名,哪怕是汉字名称都可以,但是后缀还是要有.java 的 。

注:有很多初学者 ( 我也是 ) 可能会认为文件名应该也和 main 方法所在类有关系,其实不然。main 方法只是程序的一个入口,老师讲“一个程序只能有一个入口”,好象是在说只能有一个 main 方法,其实,只要你高兴,就可以在所有类里都写上 main 方法,给程序提供N多个入口,但是最后你运行程序的时候也只能从其中的一个入口进去,这就是 main 的作用( 程序入口 )。(这也就是为什么你会发现,程序员在做单元测试时,会往自己做的很多类里面添加 main 方法,因为他要为自己做的东西添加运行入口,从而能方便测试。)

㈡ JAVA问题:什么叫做一个编译单元

当一个c或cpp文件在编译时,预处理器首先递归包含头文件,
形成一个含有所有
必要信息的单个源文件,这个源文件就是一个编译单元。
这个编译单元会被编译成为一个与cpp
文件名同名的目标文件

连接程序把不同编译单元中产生的符号联系起来,构成一个可执行程序。

㈢ JAVA中的public classa是什么意思为什么只能有一个谢谢

public class是公共类的意思,public 是访问修饰符.为什么只有一个,java规定,一个类文件,public 修类的class只有一个,并且类名必须和你新建的这个类文件名一样,所以一个类文件中可以有多个类,但由public修饰的类只能有一个。

(3)java编译单元扩展阅读:

Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点 。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。

编程工具

Eclipse:一个开放源代码的、基于Java的可扩展开发平台 。

NetBeans:开放源码的Java集成开发环境,适用于各种客户机和Web应用。

IntelliJ IDEA:在代码自动提示、代码分析等方面的具有很好的功能。

MyEclipse:由Genuitec公司开发的一款商业化软件,是应用比较广泛的Java应用程序集成开发环境 。

EditPlus:如果正确配置Java的编译器“Javac”以及解释器“Java”后,可直接使用EditPlus编译执行Java程序 。

工作原理:

由四方面组成:

(1)Java编程语言

(2)Java类文件格式

(3)Java虚拟机

(4)Java应用程序接口

参考资料:网络:java

菜鸟网:Java基础语法

Java从入门到精通(第3版):清华大学出版社:豆瓣

㈣ javamain函数需要写测试吗

开发语言
java中类的main方法总结

小熊coder
原创
关注
10点赞·8235人阅读
一、java中每个类都需要有main方法吗?
每个类可以有也可以没有main方法,

甚至所有类里可以都没有main方法。如果你想从某个类做为入口开始运行整个程序。那么就把他设成 public ,之后再里面写个main方法作为入口。

每个项目都要有一个主类,这个主类中必须得有main,用于程序的入口.在程序测试时,一般每个类中都有一个main,用于方便测试人员对类成员进行测试
不是,可有可无。但是你要执行的类中必须有,因为main函数是提供程序执行的进入口。比如你 java Test 那么Test类中必须有个main函数。也可拿来做测试某个类用。如你要测试一下Test类内的方法(这时的Test类可能不是主类,假设这时此类只提供给主类一些功能),那么你可以在Test类中加入一个main方法,调用Test类中的成员变量和方法,查看结果,达到测试的效果。

二、一个java文件中可包含多个main方法
一个java文件中可包含多个main方法

java中的main方法是java应用程序的入口,java程序在运行时,首先调用执行main方法。但并不是说java中只能有一个main方法,不同类中都可以包含main方法。但是当JVM进行编译时,只会会选择接口类里面的main方法,作为编译的入口。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JufYzJib-1640105308869)(https://raw.githubusercontent.com/xkyvvv/blogpic2/main/img/image-20211222001147510.png)]

一个Java文件至多包含一个公共类
编写一个java源文件时,该源文件又称为编译单元。一个java文件可以包含多个类,但至多包含一个公共类,作为编译时该java文件的公用接口,公共类的名字和源文件的名字要相同,源文件名字的格式为【公共类名.java】。

当同一个源文件中包含两个public class时,JVM会立马报出错误

但java文件中可以不包含任何public公共类,但编译时JVM仍将与源文件名相同的类作为默认的接口。即便其他的类提供了main方法,JVM仍然无法编译。

热点内容
socket编程php 发布:2024-05-03 20:12:50 浏览:207
坦洲邮政局可以解压吗 发布:2024-05-03 20:09:55 浏览:731
二级程序编译答案 发布:2024-05-03 18:41:35 浏览:654
领动自动精英版是哪个配置 发布:2024-05-03 18:37:30 浏览:151
java编译器中cd什么意思 发布:2024-05-03 18:36:00 浏览:390
传奇服务器如何刷钱 发布:2024-05-03 18:36:00 浏览:978
安卓版twitter怎么注册 发布:2024-05-03 18:28:05 浏览:894
Python逻辑优先级 发布:2024-05-03 18:26:14 浏览:268
linux查看svn密码 发布:2024-05-03 18:12:47 浏览:805
地铁逃生怎么进入游戏安卓 发布:2024-05-03 17:49:35 浏览:993