java主函数的含义

简介: 下面对java中的主函数进行简单的解释,解决可能困惑大家的问题,下面举的例子在实际开发中几乎不会出现,但是为了解决好奇心,大家可以这么去尝试一下! 我们在java中看到的主函数通常是这样的:public static void main(String[] args)  public:访问权限最高。

下面对java中的主函数进行简单的解释,解决可能困惑大家的问题,下面举的例子在实际开发中几乎不会出现,但是为了解决好奇心,大家可以这么去尝试一下!

我们在java中看到的主函数通常是这样的:
public static void main(String[] args) 

public:访问权限最高。

static:静态,表示加载类的时候主函数就已经存在了。

void:表示主函数不返回任何值。

main:不是关键字,但是一个特殊单词,能被虚拟机所识别。

String[] args:表示主函数所带的参数为数组,数组名为args,数组名也可以为其他的名字,都不会造成影响。

我们也可以通过以下代码可以验证:

1 class MainDemo 
2 {
3     public static void main(String[] args) 
4     {
5         System.out.println(args);
6         System.out.println(args.length);
7     }
8 }

输出结果为:

[Ljava.lang.String;@659e0bfd

0

说明参数是String类型的数组,数组长度为0。

因为此时数组长度为0,也就是没有任何数组,如果尝试输出args[0],那将会提示越界。

我们可以向数组里面传数据,有两种方式传入数据:

1.运行时传入数据:

1 class MainDemo 
2 {
3     public static void main(String[] args) 
4     {
5         System.out.println(args[1]);
6         System.out.println(args.length);
7     }
8 }

在控制台中分别执行:

javac MainDemo.java

java MainDemo hello world java javaweb 

输出的结果为:

world
4

其中 java MainDemo hello world java javaweb 中,“hello world java javaweb”是所输入的数据,用空格隔开

 

2.编写两个类并分别编写主函数:

 1 class MainDemo 
 2 {
 3     public static void main(String[] args) 
 4     {
 5         String[] arr=new String[]{"hello","world","java","javaweb"};
 6         Main.main(arr);
 7     }
 8 }
 9 class Main
10 {
11     public static void main(String[] args) 
12     {
13         System.out.println(args[2]);
14         System.out.println(args.length);
15     }
16 }

在控制台中分别执行:

javac MainDemo.java

java MainDemo

输出的结果为:

java
4

 

目录
相关文章
|
存储 Java
【JavaSE专栏32】Java函数定义、调用和主函数
【JavaSE专栏32】Java函数定义、调用和主函数
317 0
【JavaSE专栏32】Java函数定义、调用和主函数
|
Java
【Groovy】Groovy 代码创建 ( 使用 Java 语法实现 Groovy 类和主函数并运行 | 按照 Groovy 语法改造上述 Java 语法规则代码 )
【Groovy】Groovy 代码创建 ( 使用 Java 语法实现 Groovy 类和主函数并运行 | 按照 Groovy 语法改造上述 Java 语法规则代码 )
245 0
【Groovy】Groovy 代码创建 ( 使用 Java 语法实现 Groovy 类和主函数并运行 | 按照 Groovy 语法改造上述 Java 语法规则代码 )
|
存储 Java 编译器
Java主函数解释、java/javac命令解释、classpath解释
任何一段程序必须要有一个执行的起始点,有一个入口,这个入口就是主函数,本质上这个主函数就被虚拟机所调用。即:主函数是一个入口、它被虚拟机所调用、有了主函数就能保证一个类的独立运行,一个类里有且只有一个主函数。
1353 0
|
4天前
|
安全 Java UED
Java中的多线程编程:从基础到实践
本文深入探讨了Java中的多线程编程,包括线程的创建、生命周期管理以及同步机制。通过实例展示了如何使用Thread类和Runnable接口来创建线程,讨论了线程安全问题及解决策略,如使用synchronized关键字和ReentrantLock类。文章还涵盖了线程间通信的方式,包括wait()、notify()和notifyAll()方法,以及如何避免死锁。此外,还介绍了高级并发工具如CountDownLatch和CyclicBarrier的使用方法。通过综合运用这些技术,可以有效提高多线程程序的性能和可靠性。
|
4天前
|
缓存 Java UED
Java中的多线程编程:从基础到实践
【10月更文挑战第13天】 Java作为一门跨平台的编程语言,其强大的多线程能力一直是其核心优势之一。本文将从最基础的概念讲起,逐步深入探讨Java多线程的实现方式及其应用场景,通过实例讲解帮助读者更好地理解和应用这一技术。
20 3
|
8天前
|
Java 调度 UED
深入理解Java中的多线程与并发机制
本文将详细探讨Java中多线程的概念、实现方式及并发机制,包括线程的生命周期、同步与锁机制以及高级并发工具。通过实例代码演示,帮助读者理解如何在Java中有效地处理多线程和并发问题,提高程序的性能和响应能力。
|
6天前
|
缓存 安全 Java
使用 Java 内存模型解决多线程中的数据竞争问题
【10月更文挑战第11天】在 Java 多线程编程中,数据竞争是一个常见问题。通过使用 `synchronized` 关键字、`volatile` 关键字、原子类、显式锁、避免共享可变数据、合理设计数据结构、遵循线程安全原则和使用线程池等方法,可以有效解决数据竞争问题,确保程序的正确性和稳定性。
13 2
|
7天前
|
存储 安全 Java
Java-如何保证线程安全?
【10月更文挑战第10天】
|
14天前
|
监控 Java Linux
Java 性能调优:调整 GC 线程以获得最佳结果
Java 性能调优:调整 GC 线程以获得最佳结果
52 11
|
8天前
|
Java