为什么main方法被标记为public?

2023-11-26

我有一个问题,为什么 main 方法被标记为public?

根据 stackoverflow 上的答案,它被声明为static

“该方法是静态的,因为否则会产生歧义:应该调用哪个构造函数?”

但是,任何人都可以解释为什么要声明它public always?


因为JLS,第 12.1.4 节,这样说:

main 方法必须声明为 public、static 和 void。它必须指定一个声明类型为 String 数组的形式参数(第 8.4.1 节)。

如果不是的话public,那么就找不到;你会得到

Error: Main method not found in class Main, please define the main method as:
   public static void main(String[] args)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么main方法被标记为public? 的相关文章

  • 为什么 JavaFX API 不包含在 Java 8 J2SE 中? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 有谁知道为什么 JavaFX 8 仍然不是即将推出的 Java 8 中的日常 J2SE API 显示所有 Java 组件的技术图清楚地将 Jav
  • 如何消除 Java BoxLayout 中的间距?

    I programmed following ListPanel 使用 JavaScriptBoxLayout public class ListPanel extends JPanel private ArrayList
  • 如何抑制 Cucumber/Junit 断言堆栈跟踪

    我有一个黄瓜场景 该步骤使用assertEquals 我的结果报告显示了对最终用户不友好的堆栈跟踪 我怎样才能抑制它 Scenario Add two numbers Given I have two inputs 3 and 2 When
  • HttpSession 内的同步是否可行?

    UPDATE 问题后立即解决 问题 通常 同步是在 JVM 内序列化并行请求 例如 private static final Object LOCK new Object public void doSomething synchroniz
  • Android CursorAdapter、ListView 和后台线程

    我一直在开发的这个应用程序有包含数兆字节数据的数据库可供筛选 许多活动只是列表视图 通过数据库中的各个级别的数据下降 直到到达 文档 即从数据库中提取并显示在手机上的 HTML 我遇到的问题是 其中一些活动需要能够通过捕获击键并重新运行带有
  • Spring @Validated 在服务层

    Hej 我想使用 Validated group Foo class 在执行方法之前验证参数的注释 如下所示 public void doFoo Foo Validated groups Foo class foo 当我将此方法放入 Spr
  • 按位运算符简单地翻转整数中的所有位?

    我必须翻转整数的二进制表示形式中的所有位 鉴于 10101 输出应该是 01010 当与整数一起使用时 完成此操作的按位运算符是什么 例如 如果我正在编写类似的方法int flipBits int n 什么会进入身体 我只需要翻转数字中已经
  • 探索java图像处理的好资源[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我是图像处理领域的新手 请推荐一些好的资源 书籍和网络链接 来学习 Java 中的图像处理 最适合隐写术分析 适合初学者和高级水平 我看过
  • 如何停止使用扫描仪从标准输入读取多行?

    我正在做一个 JAVA 作业 应该处理多行输入 指令显示 输入是从标准输入读取的 给出了示例输入的示例 one 1 two 2 three 3 我不明白上面的示例输入 从标准输入读取 是什么意思 这是我编写的一个测试程序 它可以消除我的困惑
  • 为什么我的 @OneToMany 属性出现主键违规?

    我有一个实体 Entity public class Student GeneratedValue strategy GenerationType AUTO Id private long id OneToMany private Set
  • 生产者程序中的 kafka 网络处理器错误(ArrayIndexOutOfBoundsException:18)

    我有下面的 kafka Producer Api 程序 我对 kafka 本身是新手 下面的代码从 API 之一获取数据并将消息发送到 kafka 主题 package kafka Demo import java util Propert
  • 开发人员实际上是否使用 vim 在 Windows 操作系统上编写代码(Java)? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • java数学中的组合“N选择R”?

    java库中是否有内置方法可以为任何N R计算 N选择R 公式 实际上很容易计算N choose K甚至不需要计算阶乘 我们知道 公式为 N choose K is N N K K 因此 公式为 N choose K 1 is N N N
  • Java 中通用方法参数的 getClass()

    以下 Java 方法无法编译
  • 线程上下文类加载器和普通类加载器的区别

    线程的上下文类加载器和普通类加载器有什么区别 也就是说 如果Thread currentThread getContextClassLoader and getClass getClassLoader 返回不同的类加载器对象 将使用哪一个
  • 测量 tomcat 的排队请求数

    因此 使用tomcat 您可以设置acceptCount值 默认为100 这意味着当所有工作线程都忙时 新连接被放置在队列中 直到队列满 之后它们被拒绝 我想要的是监视此队列中项目的大小 但无法确定是否有办法通过 JMX 获取此值 即不是队
  • 接口中“不能降低继承方法的可见性”的含义

    我有两个文件 public interface PrintService void print PrintDetails details class PrintDetails private String printTemplate pub
  • 通过向上转换将 Java.sql.date 转换为 Java.util.date 安全吗?

    java sql date 扩展了 java util date 那么通过将 java sql date 转换为 java util date 是否可以在两者之间进行转换 或者有其他方法可以转换它们吗 您不一定需要强制转换 您可以将 SQL
  • AES 密钥是随机的吗?

    AES 密钥可以通过此代码生成 KeyGenerator kgen KeyGenerator getInstance AES kgen init 128 but 如果我有一个 非常可靠 的生成随机数的方法 我可以这样使用它吗 SecureR
  • Swing:创建可拖动组件...?

    我在网上搜索了可拖动 Swing 组件的示例 但我发现示例不完整或不起作用 我需要的是一个摇摆组件那可以是dragged通过鼠标 在另一个组件内 被拖拽的时候 应该已经 改变它的位置 而不仅仅是 跳 到目的地 我很欣赏无需非标准 API 即

随机推荐

  • Pandas DataFrame 列数值积分

    目前我有一个 DataFrame 如下所示 Device TimeSec Current 1 0 1 0 02 1 0 25 0 05 1 0 32 0 07 1 0 45 0 12 1 1 32 0 34 1 2 37 2 24 2 0
  • 如何使用 Nhibernate 进行条件求和?

    我正在尝试执行与此 SQL 代码等效的操作 SELECT ID SUM CASE WHEN myProperty 2 THEN 1 ELSE 0 END as nbRowWithValueOf2 SUM CASE WHEN myProper
  • 在 CMake 中,如何将命令的多行输出转换为列表?

    我想做这样的事情 execute process COMMAND bash c git git dir CMAKE SOURCE DIR git ls files OUTPUT VARIABLE TRACKED FILES add cust
  • Hadoop-3.1.2:Datanode 和 Nodemanager 关闭

    我尝试在 Windows 10 上安装 Hadoop 3 1 2 但数据节点和节点管理器关闭 我尝试下载 winutils exe 和 hadoop dll 文件并将其放置在 bin 目录下 我还尝试更改文件的权限并以管理员身份运行 但它并
  • .gitignore 是否有版本控制文件的等效项?

    这个问题是related对以下问题 https stackoverflow com search q git 2Bassume unchanged然而 这些问题提供的答案似乎都不能满足我的需求 我有一个由 py thon 脚本生成的头文件
  • 是否可以使用 std::string 进行 read() ?

    是否可以使用 std string 进行 read 例子 std string data read fd data 42 通常 我们必须使用 char 但是否可以直接使用 std string 我不想创建 char 来存储结果 Thank
  • SQL IN 子句中的多列

    如果我们需要根据给定列的一组值来查询表 我们可以简单地使用 IN 子句 但是如果需要基于多列执行查询 我们就不能使用 IN 子句 在 SO 线程中 grep 从其他 SO 线程中 我们可以使用连接或存在子句等来规避这个问题 但是如果主表和搜
  • 正则表达式仅接受字母和空格,并且不允许在字符串的开头和结尾出现空格

    我对验证输入字段有以下要求 它应该只包含字母和字母之间的空格 字符串的开头或结尾不能包含空格 它不能包含任何其他特殊字符 我为此使用以下正则表达式 s a zA Z 但这在一开始就留出了空间 任何帮助表示赞赏 对我来说 唯一合乎逻辑的方法是
  • 如何解决android studio加载项目的问题?无法加载项目:java.lang.IllegalStateException:@NotNull 方法

    我尝试在 Android studio 中重新打开该项目 但它显示以下消息 无法加载项目 java lang IllegalStateException NotNull 方法 com intellij openapi progress Pr
  • 是否可以将一组图像作为数组导入? (创建反应应用程序项目)

    是否可以将一组图像作为数组导入 create react app 项目 像下面写的那样 但作为单行 import Hat1 from assets img accesories hats hat1 png import Hat2 from
  • Ext.isIE 在 IE 11 中返回 false

    当我尝试在 IE11 中使用 Ext isIE 时 返回值为 false 然后在调试我的代码期间 我发现出现以下错误 JavaScript 错误 消息 参数无效 我的 extjs 版本是 4 2 在 ExtJS 4 2 2 之前 IE 11
  • 共享内存和写时复制或右值引用和移动语义?

    通用容器 如 Qt 容器中的容器 的共享内存 写时复制实现是否被 C 11 移动语义和右值引用取代 一个失败而另一个成功的地方在哪里 或者它们是互补的而不是替代的 写入时复制和移动语义都已用于优化在堆上保存数据的对象的值语义 std str
  • 使用 NodeJS 将多个文件上传到 AWS S3

    我正在尝试使用 NodeJS 将目录中的所有文件上传到我的 S3 存储桶 如果我明确给出文件路径 文字字符串 我就可以一次上传一个文件Key field 下面是我正在使用的脚本 var AWS require aws sdk fs requ
  • MongoDB 排序日期字符串 (mm/dd/yyyy)

    我将日期存储为 mm dd yyyy 格式的字符串 我想按这个日期字段排序 我尝试了下面的查询 测试数据很少 db collection find sort date 1 pretty 并且工作正常 这是否可以正常工作 或者我应该将其转换为
  • 使用 css 选择所有块级元素

    有没有一种简单的方法可以使用 CSS 选择所有块级元素 我想在网站主要内容区域的所有块级元素之间设置 1 5 em 的边距 现在我有这样的代码 wrapper content p wrapper content ul wrapper con
  • 带请求正文的 Java HTTP DELETE

    我有一个外部 API 它使用 DELETE 和正文 JSON 我利用 Postman REST 客户端并通过请求正文完成删除 效果很好 我正在尝试使用一种方法自动化此功能 我尝试使用 HttpURLConnection 进行类似的 GET
  • Linux 中每个进程的最大线程数?

    Linux下一个进程最多可以创建多少个线程 如何 如果可能 修改该值 Linux 没有每个进程单独的线程限制 只是对系统上进程总数的限制 线程本质上只是 Linux 上具有共享地址空间的进程 您可以这样查看 cat proc sys ker
  • 在 `__enter__` 中返回除 `self` 以外的值是反模式吗?

    下列的这个相关问题 虽然总是有一些库以独特的方式使用语言功能的例子 但我想知道是否返回除self in an enter 方法应被视为反模式 在我看来 这似乎是一个坏主意的主要原因是它使包装上下文管理器出现问题 例如 在 Java 中 也可
  • 带最大化按钮的 Java 模式窗口

    如何创建一个模态窗口并具有最大化按钮 那么是否可以创建一个模态JFrame或创建一个JDialog带最大化按钮 在大多数外观和感觉上 模态窗口 例如JDialog 没有最大化按钮只是因为它们根本不应该被最大化 或最小化 可以通过一些技巧来添
  • 为什么main方法被标记为public?

    我有一个问题 为什么 main 方法被标记为public 根据 stackoverflow 上的答案 它被声明为static 该方法是静态的 因为否则会产生歧义 应该调用哪个构造函数 但是 任何人都可以解释为什么要声明它public alw