public static void main(String[] args)

原创 2016年08月29日 23:35:07

最近刚开始学习JAVA,下面是遇到的一些问题,在网上查看了很多资料和一些牛人的技术博客,自己才稍稍领悟,在这里做些总结和整理。有些牛人对知识点的理解很完美,这里就直接借鉴了。

注:本人菜鸟一枚,错误之处望留言指正。

  • 1、写JAVA代码时,最先写的这两行到底是什么意思?

    1. public class HelloWorld {
    2.     public static void main(String[] args) {
    3. 
    4.     }
    5. }
    
  • 在这里首先说下,定义一个方法的语法:

        访问修饰符  返回值类型  方法名(参数列表) {
                方法体
        }
    
    1. 访问修饰符:方法允许被访问的权限范围,比如,public、protected、private 或者省略。其中public表示该方法可以被其它任何代码调用
    2. 返回值类型:定义方法的返回值的类型,如果方法不需要返回任何值,则返回值类型指定为void;如果方法需要返回值,则需要指定返回值的类型,并且在方法体中添加一条return语句用来返回值
    3. 方法名:定义的方法的名字,必须使用合法的标识符
    4. 参数列表:传递给方法的参数列表,参数可以有多个,也可以没有,多个参数之间用逗号隔开。每个参数由参数类型和参数名组成,以空格隔开
  • 在这里先来了解一些与Java相关的名词:

Java Virtual Machine,简称JVM;它是运行所有Java程序的抽象计算机,是Java语言的运行环境,JVM读取并处理编译过的与平台无关的字节码(class)文件。
Java语言是跨平台的,就是因为有JVM的存在。而JVM不是跨平台的,不同的操作系统需要安装与此对应的JVM。在需要运行Java应用程序的操作系统上,先安装一个Java虚拟机,由Java虚拟机负责Java程序在该系统中的运行。

在Java编程中,JVM会首先查找类中的main方法,因为main方法是Java程序的入口(关于程序的入口,其它的情况在这里不讨论),如果找不到main方法,程序会报错(我是在DOS界面中分布运行Java程序的,在程序的编译阶段不会报错,在程序的执行阶段会报错,提示:“在类中找不到main方法,请将main方法定义为:public static void main(String[] args) …”Java程序的执行阶段是由JVM参与的,编译阶段JVM是不管的)

main方法的public修饰符

public表明允许系统中任何位置的类都可以访问它。当然,JVM也可以轻松的访问执行它。

main方法的static修饰符

这里先说说类的实例化

如果被调用的方法声明为static,可以在其它方法中直接调用。如果被调用方法没被static修饰(不是静态方法),调用时需要通过类的实例化进行调用(因为静态方法随着类的加载而加载,其先存在,对象后存在。一个已经存在的方法去调用还不存在的方法(没被static修饰),就要先创建那个方法的对象,创建对象的过程,就称为实例化。然后通过对象去调用那个方法。这个过程就是类的实例化)
1. 因为main方法是静态的,JVM调用这个方法时就不需要创建任何包含这个main方法的实例。
2. 如果main方法不声明为静态的,JVM就必须创建main类的实例,但是构造器可以被重载(个人理解,“构造器”就是,和类名相同但无返回值的方法),JVM就没法确定调用哪个main方法。

main方法返回值为void

main方法作为程序的入口和出口,是没有返回值的,main方法不同于其它方法,其它方法可以有返回值,这样在程序中调用该方法是,可以获取返回值,而main方法是由JVM调用的,如果main有返回值,那这个返回值返回给谁呢,肯定返回给JVM,那么这个返回还有意义吗。

(String[] args)

函数的参数,参数类型是一个数组,该数组中的元素是字符串。JVM在调用主函数时,传入的是new String[0];

程序第一行的“public class HelloWorld”也就很好理解了,指定类名Helloworld的权限为public(公有的)

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

《Java程序员面试笔试宝典》之为什么需要public static void main(String[] args)这个方法

public staticvoid main(String[] args)为Java程序的入口方法,JVM在运行程序的时候,会首先查找main方法

public static void main(String[] args) 隐含了什么?

public class TestSort { public static void main(String[] args) { // 需要分别用Javac和Java命令行编译和运行 in...

public static void main(String[] args){}函数诠释

主函数的一般写法如下:   public static void main(String[] args){…}   下面分别解释这些关键字的作用:   (1)public关键字,这个好理解,声明...

public static void main(String[] args){}函数诠释

主函数的一般写法如下:   public static void main(String[] args){…}   下面分别解释这些关键字的作用:   (1)public关键字,这个...

对于public static void main(String args[])你知几何?

Java中main()方法以及命令行参数的若干注意   main方法的完整定义语法:public static void main(String[] args){} 命令行格式:ja...

java学习笔记5_HelloWorld 和 public static void main(String[] args)

1.   这是第一个hello程序和说明 // 默认引入package java.lang // 文件名和类名必须相同,在一个文件里最多有一个public类 public class Hello...

public static void main(String[] args){}函数诠释

主函数的一般写法如下:   public static void main(String[] args){…}   下面分别解释这些关键字的作用:   (1)public关键字,这个好理解,声明...

public static void main(String[] args){}函数诠释

主函数的一般写法如下:  public static void main(String[] args){…}  下面分别解释这些关键字的作用:  (1)public关键字,这个好理解,声明主函数为pu...

Java之public static void main(String[] args)

public static void main(String[] args)是Java程序的入口方法,JVM在运行程序时,会首先查找main()方法。其中,public是权限修饰符,表明任何类或者对象...

JAVA:从public static void main(String args[])开始

我们都知道当你要运行一个JAVA文件的时候必须要有一个main函数。这是为什么呢? 跟C语言的道理一样,当你运行一个文件的时候,你必须要有一个入口函数或者入口地址,在C里面是main函数,同样的在J...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)