java的main方法一定要写在public修饰的类里吗?怎么验证?

JavaKuzz 2017-09-19 09:51:02
程序如下,Eclipse中,在Test类里右键没有run java application!!

public class DanLiModel {
private static DanLiModel danLi;

private DanLiModel() {
};

public static DanLiModel getDanLi() {
if (danLi==null) {
danLi=new DanLiModel();
}
return danLi;
}
}
class Test{
public static void main(String[] args) {
DanLiModel d1=DanLiModel.getDanLi();
DanLiModel d2=DanLiModel.getDanLi();
System.out.println(d1=d2);
}
}
...全文
1242 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
JavaKuzz 2017-09-20
  • 打赏
  • 举报
回复
引用 6 楼 miaoch 的回复:
[quote=引用 2 楼 shijing266 的回复:] main方法是JVM(java虚拟机)自动调用 JVM调用main方法的位置自然不会在某个类中、或某个包中,因此只有当main方法在公有级别上时,才对JVM可见,所以mian方法需要public修饰, main方法所在的类也需要public修饰符。 另外由于main方法是所有程序的入口,也就是main被调用时没有任何对象创建,不通过对象调用某一方法,只有将该方法定义为静态方法,所以main方法是一个静态方法,既需要static修饰。 JVM对于java程序已经是最底层,由它调用的方法的返回值已经没有任何地方可去,因此,main方法返回值为空,既需用void修饰。 至于main方法的参数String[ ] arg我们现在已经很少有机会去用它了,它用于在接受命令行传入的参数 这段知识如果你看了《Thinking in Java》 里面有一段关于main方法的,那么你就能懂
虽然我以前也这么认为,但是main方法真的和public没有什么关系。public只是让这个类对其他的类公开。而你要调用这个类的main方法,或者说java这个class,和这个类是不是公开的好像没有什么关系。一个很简单的例子,一个private static class Inner的内部类。我们也可以通过 java Outer$Inner去执行它[/quote] 你是正解!
miaoch 2017-09-20
  • 打赏
  • 举报
回复
引用 2 楼 shijing266 的回复:
main方法是JVM(java虚拟机)自动调用 JVM调用main方法的位置自然不会在某个类中、或某个包中,因此只有当main方法在公有级别上时,才对JVM可见,所以mian方法需要public修饰, main方法所在的类也需要public修饰符。 另外由于main方法是所有程序的入口,也就是main被调用时没有任何对象创建,不通过对象调用某一方法,只有将该方法定义为静态方法,所以main方法是一个静态方法,既需要static修饰。 JVM对于java程序已经是最底层,由它调用的方法的返回值已经没有任何地方可去,因此,main方法返回值为空,既需用void修饰。 至于main方法的参数String[ ] arg我们现在已经很少有机会去用它了,它用于在接受命令行传入的参数 这段知识如果你看了《Thinking in Java》 里面有一段关于main方法的,那么你就能懂
虽然我以前也这么认为,但是main方法真的和public没有什么关系。public只是让这个类对其他的类公开。而你要调用这个类的main方法,或者说java这个class,和这个类是不是公开的好像没有什么关系。一个很简单的例子,一个private static class Inner的内部类。我们也可以通过 java Outer$Inner去执行它
miaoch 2017-09-20
  • 打赏
  • 举报
回复
miaoch 2017-09-20
  • 打赏
  • 举报
回复
在eclipse中能运行的。 只要你打开Run Configurations,新建一个路径就行了,写在public类里能自动帮你识别。不是public的就得这么做了
枫醉秋 2017-09-20
  • 打赏
  • 举报
回复
引用 2 楼 shijing266 的回复:
main方法是JVM(java虚拟机)自动调用 JVM调用main方法的位置自然不会在某个类中、或某个包中,因此只有当main方法在公有级别上时,才对JVM可见,所以mian方法需要public修饰, main方法所在的类也需要public修饰符。 另外由于main方法是所有程序的入口,也就是main被调用时没有任何对象创建,不通过对象调用某一方法,只有将该方法定义为静态方法,所以main方法是一个静态方法,既需要static修饰。 JVM对于java程序已经是最底层,由它调用的方法的返回值已经没有任何地方可去,因此,main方法返回值为空,既需用void修饰。 至于main方法的参数String[ ] arg我们现在已经很少有机会去用它了,它用于在接受命令行传入的参数 这段知识如果你看了《Thinking in Java》 里面有一段关于main方法的,那么你就能懂
  • 打赏
  • 举报
回复 2
main方法是JVM(java虚拟机)自动调用 JVM调用main方法的位置自然不会在某个类中、或某个包中,因此只有当main方法在公有级别上时,才对JVM可见,所以mian方法需要public修饰, main方法所在的类也需要public修饰符。 另外由于main方法是所有程序的入口,也就是main被调用时没有任何对象创建,不通过对象调用某一方法,只有将该方法定义为静态方法,所以main方法是一个静态方法,既需要static修饰。 JVM对于java程序已经是最底层,由它调用的方法的返回值已经没有任何地方可去,因此,main方法返回值为空,既需用void修饰。 至于main方法的参数String[ ] arg我们现在已经很少有机会去用它了,它用于在接受命令行传入的参数 这段知识如果你看了《Thinking in Java》 里面有一段关于main方法的,那么你就能懂
usecf 2017-09-20
  • 打赏
  • 举报
回复
你在cmd下用命令也行 javac 类名 生成class文件后 再 java class文件
那场遇见 2017-09-20
  • 打赏
  • 举报
回复
.
WPS Office 2019 是一款功能丰富的办公软件套装,它整合了文字、表格、演示、PDF 等组件,具备体积小巧、功能丰富、兼容性强等特点,能满足日常办公的多种需求。 功能组件丰富:包含 WPS 文字、WPS 演示、WPS 表格、WPS PDF 等组件,可用于文档编辑、表格计算、幻灯片制作、PDF 处理等,支持 DOC、DOCX、XLS、XLSX、PPT 等多种格式,能与 Microsoft Office 较好地兼容。 支持云存储与协作:用户登录 WPS 账号后,可实现多终端、跨平台的数据同步,还能与他人协同办公,文档可通过微信、QQ 等社交平台一键分享。 PDF 功能强大:提供沉浸式 PDF 阅读体验和稳定的编辑服务,支持一键编辑 PDF 文档内容。借助 OCR 技术,可精准转换文档、表格、PPT、图片等格式的文件。 界面设计优化:具有全新视觉设计,默认皮肤舒适清爽,还支持桌面背景、界面字体、皮肤、格式图标等个性化设置。同时,文档标签可拖拽成独立窗口或合并,用户可自主选择文档显示方式,还能将文件放置在不同工作区,便于分类浏览与管理。 内置实用工具:内置了简单的网页浏览器,点击文档中的链接会默认用其打开,可进行网页添加到首页、另存为 PDF 等操作。此外,“应用中心” 集成了输出转换、文档助手、安全备份等多种实用功能。 模板资源丰富:稻壳商城提供了大量模板、范文、图片等素材资源,涵盖求职简历、总结计划、合同协议等常见文档类型,方便用户快速创建专业文档。 表格功能特色突出:支持通过关键词快速切换工作表,设有阅读模式和护眼模式。还可分类合并单元格,以及拆分合并单元格并填充内容。公式编辑器中可轻松完成公式嵌套,筛选时可通过 “仅筛选此项” 一步完成特定值筛选,还能根据筛选条件生成动态分析图表。另外,“特色功能” 和 “智能工具箱” 菜单中包含 PDF

62,634

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧