我是靠谱客的博主 精明黑夜,最近开发中收集的这篇文章主要介绍java 类声明自己,Java:一个文件中的多个类声明,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

javac没有主动禁止这一点,但它确实有一个限制,几乎意味着你永远不想从另一个文件引用顶级类,除非它与它所在的文件具有相同的名称 .

假设您有两个文件,Foo.java和Bar.java .

Foo.java包含:

公共课Foo

Bar.java包含:

公共类酒吧

class Baz

我们还要说所有类都在同一个包中(并且这些文件位于同一目录中) .

如果Foo.java引用Baz而不是Bar并且我们尝试编译Foo.java会发生什么?编译失败,出现如下错误:

Foo.java:2: cannot find symbol

symbol : class Baz

location: class Foo

private Baz baz;

^

1 error

如果你考虑一下,这是有道理的 . 如果Foo.java引用了Baz,但是没有Baz.java(或Baz.class),javac怎么知道要查看哪个源文件?

如果您改为告诉javac同时编译Foo.java和Bar.java,或者即使您之前编译过Bar.java(留下了javac可以找到它的Baz.class),那么这个错误就会消失 . 但是,这会使您的构建过程感觉非常不可靠和不稳定 .

因为实际的限制,更像是“不要从另一个文件引用顶级类,除非它与它所在的文件具有相同的名称,或者你也指的是同一个文件中的一个类名称与文件“有点难以理解的东西相同,人们通常会选择在每个文件中放置一个顶级类的更简单(尽管更严格)的约定 . 如果您改变主意是否应该公开课程,这也会更好 .

有时,每个人都以某种特定的方式做某事真的有充分的理由 .

最后

以上就是精明黑夜为你收集整理的java 类声明自己,Java:一个文件中的多个类声明的全部内容,希望文章能够帮你解决java 类声明自己,Java:一个文件中的多个类声明所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(65)

评论列表共有 0 条评论

立即
投稿
返回
顶部