public static void main(String[] args)使用解读

 更新时间:2024年01月24日 09:39:49   作者:故屿γ  
这篇文章主要介绍了public static void main(String[] args)的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

Java 基础语法程序代码

public static void main(String[ ] args) 是什么意思?

这是 Java 程序的入口地址,Java 虚拟机运行程序的时候首先找的就是 main 方法。

跟 C 语言里面的 main() 函数的作用是一样的。

只有 main() 方法 Java 程序才能够被 Java 虚拟机运行,main 是一个程序的入口,一个 java 程序运行必须有且仅有一个 main 方法;可理解为规定的格式。

对于上图的参数及修饰符:

  • public:表示的这个程序的访问权限,表示的是任何的场合可以被引用,这样 Java 虚拟机就可以找到 main() 方法,从而来运行 javac 程序。
  • static: 表明方法是静态的,不依赖类的对象的,是属于类的,在类加载的时候 main() 方法也随着加载到内存中去。
  • void:方法是不需要返回值的。
  • main:主程序,约定俗成,规定的。
  • String[ ] args:从控制台接收参数。

注:

  • 区别:String args[ ] 与 String[ ] args 都可以执行,但推荐使用 String[ ] args,这样可以避免歧义和误读。
  • 主方法入口:所有的 Java 程序由 public static void main(String[] args) 方法开始执行。

我们经常使用到 System.out.println(),那它是什么呢?

println ()是一个方法(Method),而 System 是系统类(Class),out 是标准输出对象(Object)。

这句话的用法是调用系统类 System 中的标准输出对象 out 中的方法 println()。

System 是系统类。

是 java.lang 包中的一个 final 类。

根据 javadoc,“java.lang.System 该类提供的设施包括标准输入,标准输出和错误输出流; 访问外部定义的属性和环境变量; 一种加载文件和库的方法; 以及用于快速复制数组等一部分的实用方法… ”。

  • out 是标准输出对象。是 System 类的静态成员字段,类型为PrintStream。
  • println() 是一个方法。是 PrintStream 类的一个方法。println 打印(参数内容+换行符) 到控制台。

总结:

由源码可得:System 类是静态的,且为 PrintStream 类型的字段 out 去调用了PrintStream 类中的 print( ) 和 println( ) 两个方法也就有了 System.out.println( ) 形式的输出语句。 

定义一个方法包含以下语法

修饰符 返回值类型 方法名(参数类型 参数名){
…
方法体
…
return 返回值;
}

由上图可见方法包含一个方法头和一个方法体:

  • 修饰符:修饰符,这是可选的,告诉编译器如何调用该方法。定义了该方法的访问类型。
  • 返回值类型 :方法可能会返回值。returnValueType 是方法返回值的数据类型。有些方法执行所需的操作,但没有返回值。在这种情况下,returnValueType 是关键字 void。
  • 方法名:是方法的实际名称。方法名和参数表共同构成方法签名。
  • 参数类型:参数像是一个占位符。当方法被调用时,传递值给参数。这个值被称为实参或变量。参数列表是指方法的参数类型、顺序和参数的个数。参数是可选的,方法可以不包含任何参数。
  • 方法体:方法体包含具体的语句,定义该方法的功能。

方法的命名规则

1.方法的名字的第一个单词应以小写字母作为开头,后面的单词则用大写字母开头写,不使用连接符。例如:addPerson。

2.下划线可能出现在 JUnit 测试方法名称中用以分隔名称的逻辑组件。例如 testPop_emptyStack。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Java服务器端跨域问题解决方案

    Java服务器端跨域问题解决方案

    这篇文章主要介绍了java服务器端跨域问题解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-01-01
  • java实现读取、删除文件夹下的文件

    java实现读取、删除文件夹下的文件

    本文给大家分享的是java实现读取、删除文件夹下的文件,其中File.delete()用于删除“某个文件或者空目录”!所以要删除某个目录及其中的所有文件和子目录,要进行递归删除,有需要的小伙伴可以参考下。
    2015-05-05
  • Java常用集合之Set和Map的用法详解

    Java常用集合之Set和Map的用法详解

    这篇文章将通过一些示例为大家详细介绍一下Java常用集合中Set和Map的用法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2022-07-07
  • Springboot处理CORS跨域请求的三种方法

    Springboot处理CORS跨域请求的三种方法

    这篇文章主要介绍了Springboot处理CORS跨域请求的三种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-06-06
  • Java比较两个对象中全部属性值是否相等的方法

    Java比较两个对象中全部属性值是否相等的方法

    本文主要介绍了Java比较两个对象中全部属性值是否相等的方法,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • java springboot邮箱找回密码功能的实现讲解

    java springboot邮箱找回密码功能的实现讲解

    这篇文章主要介绍了java springboot邮箱找回密码功能的实现讲解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-01-01
  • Java编程数组中最大子矩阵简便解法实现代码

    Java编程数组中最大子矩阵简便解法实现代码

    这篇文章主要介绍了Java编程数组中最大子矩阵简便解法实现代码,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • Java实现一个简易聊天室流程

    Java实现一个简易聊天室流程

    这篇文章主要介绍了我的java课程设计一个多人聊天室(socket+多线程)本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-11-11
  • Spring实例化bean过程解析及完整代码示例

    Spring实例化bean过程解析及完整代码示例

    这篇文章主要介绍了Spring实例化bean过程解析及完整代码示例,简单分析实例化bean过程并且分享了相关实例,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • 浅谈synchronized加锁this和class的区别

    浅谈synchronized加锁this和class的区别

    synchronized 是 Java 语言中处理并发问题的一种常用手段,本文主要介绍了synchronized加锁this和class的区别,具有一定的参考价值,感兴趣的可以了解一下
    2021-11-11

最新评论