Java main()方法
在 Java 中,main() 方法是 Java 应用程序的入口方法,程序在运行的时候,第一个执行的方法就是 main() 方法。main() 方法和其他的方法有很大的不同。
下面先来看最简单的一个 Java 应用程序 HelloWorld,我们将通过这个例子讲解 Java 类中 main() 方法的奥秘,程序的代码如下:
下面的示例代码演示了如何在 main() 方法中调用本类的静态和非静态方法。
下面先来看最简单的一个 Java 应用程序 HelloWorld,我们将通过这个例子讲解 Java 类中 main() 方法的奥秘,程序的代码如下:
public class HelloWorld { public static void main(String args[]) { System.out.println("Hello World!"); } }其中,使用 main() 方法时应该注意如下几点:
- 访问控制权限是公有的(public)。
- main() 方法是静态的。如果要在 main() 方法中调用本类中的其他方法,则该方法也必须是静态的,否则需要先创建本类的实例对象,然后再通过对象调用成员方法。
- main() 方法没有返回值,只能使用 void。
- main() 方法具有一个字符串数组参数,用来接收执行 Java 程序的命令行参数。命令行参数作为字符串,按照顺序依次对应字符串数组中的元素。
- 字符串中数组的名字(代码中的 args)可以任意设置,但是根据习惯,这个字符串数组的名字一般和 Java 规范范例中 main() 参数名保持一致,命名为 args,而方法中的其他内容都是固定不变的。
- main() 方法定义必须是“public static void main(String[] 字符串数组参数名)”。
- 一个类只能有一个 main() 方法,这是一个常用于对类进行单元测试(对软件中的最小可测试单元进行检查和验证)的技巧。
下面的示例代码演示了如何在 main() 方法中调用本类的静态和非静态方法。
public class Student { public void Speak1() { System.out.println("你好!"); } public static void Speak2() { System.out.println("Java!"); } public static void main(String[] args) { // Speak1(); // 错误调用 Speak2(); // 可以直接调用静态方法Speak2() Student t = new Student(); t.Speak1(); // 调用非静态方法,需要通过类的对象来调用 } }由上面代码可以看出,在 main() 方法中只能直接调用静态方法,如果想调用非静态方法,需要将当前类实例化,然后通过类的对象来调用。
例 1
创建一个 Java 程序,编写代码实现程序执行时统计传递参数的数量及每个参数值。示例代码如下:public class TestMain { public static void main(String[] args) { int n = args.length; // 获取参数数量 System.out.println("一共有 "+n+" 个参数"); if(n > 0) { // 判断参数个数是否大于0 for(int i = 0;i < n;i++) { System.out.println(args[i]); } } } }1)将代码保存到 TestMain.java 文件中(这里把 TestMain.java 文件放到了 D 盘的 myJava 文件夹),然后用如下 Java 命令对程序进行编译:
javac TestMain.java2)程序编译成功后用如下 Java 命令执行 Test 程序:
java TestMain 参数列表 // 多个之间用空格隔开这里使用如下三个语句执行程序:
java TestMain java TestMain apple banana java TestMain one two three four five six3)执行结果如下所示:
C:\Users\leovo>d: D:\myJava>javac TestMain.java D:\myJava>java TestMain 一共有 0 个参数 D:\myJava>java TestMain apple banana 一共有 2 个参数 apple banana D:\myJava>java TestMain one two three four five six 一共有 6 个参数 one two three four five six D:\myJava>由此可见,main() 方法可以以字符串的形式接收命令行参数,然后在方法体内进行处理。
所有教程
- C语言入门
- C语言编译器
- C语言项目案例
- 数据结构
- C++
- STL
- C++11
- socket
- GCC
- GDB
- Makefile
- OpenCV
- Qt教程
- Unity 3D
- UE4
- 游戏引擎
- Python
- Python并发编程
- TensorFlow
- Django
- NumPy
- Linux
- Shell
- Java教程
- 设计模式
- Java Swing
- Servlet
- JSP教程
- Struts2
- Maven
- Spring
- Spring MVC
- Spring Boot
- Spring Cloud
- Hibernate
- Mybatis
- MySQL教程
- MySQL函数
- NoSQL
- Redis
- MongoDB
- HBase
- Go语言
- C#
- MATLAB
- JavaScript
- Bootstrap
- HTML
- CSS教程
- PHP
- 汇编语言
- TCP/IP
- vi命令
- Android教程
- 区块链
- Docker
- 大数据
- 云计算