Java HelloWorld FAQ

郑老师 老师 2021-07-26 22:51:18
加精

HelloWorld可以说是几乎所有程序语言中最著名的入门程序。

最近的动画电影《你好!世界》的命名也是取自于“HelloWorld”。

使用Java编写HelloWorld程序,也会碰到不少问题。尤其是使用命令行编写时,因为涉及到环境变量、命令行、不熟悉面向对象编写方式,初学者也会碰到不少问题。以下就是HelloWorld程序的一些常见问题。注意:这里为了简化描述,我们以Hello作为例子代替HelloWorld。

先给出一个完整的HelloWorld的例子

public class HelloWorld {

	public static void main(String[] args) {
		System.out.println("Hello World"); 
	}

}

1. 为什么命令行下输入javac,提示'javac'不是内部或外部命令....?
原因:path变量没有设置正确
解决方法:假如你的jdk安装在d:\java\jdk目录下,那么你的path变量应该添加d:\java\jdk\bin
注意:如果path变量已有其他的值,注意要用";"来进行分割。如已有d:\system,你就要设置成
d:\system;d:\java\jdk\bin

参考资料(环境变量设置):

Win10下JDK环境变量的设置与JDK的下载-CSDN社区

2. 我明明建立的是Hello.java,可是为什么执行javac Hello.java时,找不到Hello.java
原因:可能你默认建立的是文本文件,即Hello.java.txt,但是操作系统默认隐藏已知的扩展名,
即把.txt隐藏起来,这样你我的电脑里看到的是Hello.java,但实际上是Hello.java.txt
解决办法:百度搜索"显示/隐藏文件扩展名",然后设置好

3. 执行java Hello.class,提示"错误: 找不到或无法加载主类 Hello.class"
原因:正确的命令应该是java Hello,java命令后面的参数是类名Hello而不是文件名
Hello.class

4. 常见错误:类Hello是公共的, 应在名为 Hello.java 的文件中声明

一个Test.java,里面写了如下代码

public class Hello1{
}

然后执行javac Test.java
提示:Test.java:1: 错误: 类Hello是公共的, 应在名为 Hello.java 的文件中声明
原因:声明为public的class,如上面的Hello1,必须在与该类名相同的文件中,比如
Hello1.java
注意:Test.java中也不能有两个声明为public的class,比如文件中不能同时含有

public class Test{
}
public class Hello1{
}

解决方法:自己想
注意:一个文件中可以有多个class,但是只能有一个public class,且要和文件名相同


5. 常见错误:类hello是公共的, 应在名为 hello.java 的文件中声明

一个Hello.java文件,里面包含如下代码

public class hello{
}

然后执行javac Hello.java
提示:Hello.java:2: 错误: 类hello是公共的, 应在名为 hello.java 的文件中声明
原因:java是大小写敏感的声明为public的class的类名一定要和文件名大小写一致
解决方法:你懂得

6. 常见错误:在类 Hello 中找不到主方法, 请将主方法定义为:

一个Hello.java文件,里面包含如下代码

public class Hello{
}

编译成功后,执行java Hello
提示:错误: 在类 Hello 中找不到主方法, 请将主方法定义为:
public static void main(String[] args)
原因:很明显,该Hello.java文件没有main方法,main方法是程序的入口,没有main方法,
程序是无法启动的
解决方法:加入main方法

public static void main(String[] args){
}

 注意:java是大小写敏感的,你的main方法写成这样也不行

public static void Main(String[] args){
}

 为什么,仔细看。

 

7. HelloWorld代码详解

public class HelloWorld { //HelloWorld是类名。public代表大家都能访问。

	//main方法:程序的入口。就是要启动该程序,将该方法将首先被执行。
	public static void main(String[] args) {//args 用来存储参数的数组。这里没用到。
		//System:一个类; 
		//out:System类的一个属性,是标准输出流,用于输出数据。
		//println: out对象的一个方法。用来输出一行。
		System.out.println("Hello World"); //输出 Hello World 这个字符串
	}

}

 

...全文
1003 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
CSDN-Ada助手 2023-01-13
  • 打赏
  • 举报
回复
您可以前往 CSDN问答-Java 发布问题, 以便更快地解决您的疑问

4,167

社区成员

发帖
与我相关
我的任务
社区描述
为初学Java的大学生提供一个学习、交流的社区。 社区包括:技术文章、学习任务、在线课程、在线编程练习。
javajava-eeeclipse 高校
社区管理员
  • zhrb
  • kenandoer
  • 驼同学.
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

社区板块说明:
1. Java技术:包含Java技术的各种新闻、文章。
2. 教学频道:包含Java基础技术与Java教学中常用的一些文章。建议初学者、在线学习的同学在这里交流、提问、浏览课程学习相关文章。
3. 学习任务:老师发布的教学任务。
4. 其他技术:其他技术文章。

社区链接说明:
1. 在线学习:本社区对应的在线课程(免费学习)。
2. 编程练习:本社区使用的在线编程练习平台(加入在线课程后,免费练习)。
3. 项目实例:一个简单的Java项目示例。
 

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