首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

java中main方法的运行

学过java的都知道main方法是学习java的开始,也是程序的入口,不过你有多少个类或程序,线程,他们的入口方法都是main()。...main方法是一个静态的方法,所以这个方法是属于类的,而不是对象的;在 main() 方法中,参数类型是 “String[] args”, 意味着在启动Java应用的同时,传递一个 String 类型的数组来定制化应用的初始化属性...4. executed the main method(执行main方法) 实际上,装载的工作是由Java的 类加载器 完成的。当JVM启动的时候,会同时启动三个类加载器。 1....System class loader(系统加载器):负责加载位于 CLASSPATH 路径中的Java类。 所以,我们的 HelloWorld 类是被系统加载器加载的。...随后,被调用的 println() 方法又会生成一个栈帧被推入到 “main” 线程所在的栈中。当 main() 方法执行完毕,整个的栈会被销毁,整个的应用也就正常结束了。

1.2K20

Java中main方法详解

Java中的main方法,是一个java应用程序的入口,无论一个java的应用多么复杂庞大,或是多么的小,只要他是一个可以运行的java程序那么必然就要有一个main方法。...每个修饰符都有它对应的权限,public权限最大,为了说明问题,我们假设main方法是用private修饰的,那么main方法出了Demo这个类对外是不可见的。那么,JVM就访问不到main方法了。...在Java中声明为public的任何方法或变量都可以从该类的外部访问。 而JVM访问main方法显然不是在类的内部访问,因此main方法需要定义为public的方法。...如果main方法正常退出,那么Java应用层序的退出代码为0,表示成功的运行了程序。...也可以用Runtime类或者System.exit()来退出。 5、String [] args String[] args,是main方法中唯一可以改变的地方!

1.8K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    反射类的main方法

    有时候我们需要调用一个类的Main方法,也可说是执行这个类的代码。...但是这时候这个类我们还没有写好,或者这个类是通过网络运行时传给我们的,我们就不可能在程序中知道我们将要运行的类的名字,这时候我们可以利用java的反射机制去调用main方法,只要在我们执行的时候,将我们需要执行的类的名字传递进去就可以了...这个方法在进行网络编程的时候,有时候我们需要接收一个类,我们只有等到接收到了才知道类的名字叫什么,显然现在在写程序不实际,我们就可以利用反射的方法。...import java.lang.reflect.Method; public class CopyOfReflectMain { public static void main...Eclipse里面需要配置,在运行配置中的程序参数中需要加上Test1然后运行会出现如下的结果: abc efg abc efg abc efg

    1K60

    java中main方法是怎么运行的?

    学过java的都知道main方法是学习java的开始,也是程序的入口,不过你有多少个类或程序,线程,他们的入口方法都是main() main方法是一个静态的方法,所以这个方法是属于类的,而不是对象的;...在 main() 方法中,参数类型是 “String[] args”, 意味着在启动Java应用的同时,传递一个 String 类型的数组来定制化应用的初始化属性。...4. executed the main method(执行main方法) 实际上,装载的工作是由Java的 类加载器 完成的。当JVM启动的时候,会同时启动三个类加载器。 1....System class loader(系统加载器):负责加载位于 CLASSPATH 路径中的Java类。 所以,我们的 HelloWorld 类是被系统加载器加载的。...随后,被调用的 println() 方法又会生成一个栈帧被推入到 “main” 线程所在的栈中。当 main() 方法执行完毕,整个的栈会被销毁,整个的应用也就正常结束了。

    1.6K20

    Java main()方法剖析

    从语法上对main方法的理解 从JVM角度: 由于JVM需要调用类的main()方法,所以该方法的访问权限必须是public, 又因为JVM在执行main()方法时不必创建对象,所以该方法必须是static...的, 该方法接收一个String类型的数组参数,该数组中保存执行Java命令时传递给所运行的类的参数。...从Java语法角度: 又因为main() 方法是静态的,我们不能直接访问该类中的非静态成员,必须创建该类的一个实例对象后,才能通过这个对象去访问类中的非静态成员。...解析如下: Java保存的文件名必须与类名一致; 如果文件中只有一个类,文件名必须与类名一致; 一个Java文件中只能有一个public类; 如果文件中不止一个类,public类名必须与文件名一致; 如果文件中不止一个类...main 方法只是程序的一个入口,老师讲“一个程序只能有一个入口”,好象是在说只能有一个 main 方法,其实,只要你高兴,就可以在所有类里都写上 main 方法,给程序提供N多个入口,但是最后你运行程序的时候也只能从其中的一个入口进去

    65430

    Shell-通过shell启动Java类中的main方法 + 通过Shell启动jar包

    文章目录 概述 shell启动Java类中的main方法 启动脚本分析 启动脚本 shell启动jar包 概述 Java程序 运行在linux主机上, 通过shell脚本启动为进程。...shell启动Java类中的main方法 启动脚本分析 根据服务器上JDK 以及工程部署路径 ?...修改相应的#JDK所在路径 APP_HOME 启动入口类APP_MAINCLASS(需有main方法) 。注意CLASSPATH,务必正确export相应的jar包。.../HbaseMonitor #需要启动的Java主程序(main方法类) APP_MAINCLASS=com.xxxxx.monitor.hbase.HbaseMonitor #拼凑完整的classpath...Java主程序(main方法类) APP_MAINCLASS=com.tudaxia.test.TestMain #拼凑完整的classpath参数,包括指定lib目录下所有的jar CLASSPATH

    1.2K60

    Java main 方法三问

    Java main 方法三问 main 方法是我们能刚开始学习 Java 时接触的第一个方法,在开发过程中我们都会直接和间接的使用到这个方法,那么你是否考虑过这三个问题: main 方法为什么是静态方法...零、main 方法为什么是静态方法 我们想象一下,如果 main 方法不是静态的,那么 JVM 在调用 main 方法前就必须先实例化 main 类,但是构造器可以被重载因此 JVM 就无法确认到底应该调用哪个...并且静态的方法和数据加载到内存中后就可以直接调用,而不需要先实例化类后才能调用实例化方法。简单的说就是静态的 main 方法会被加载到 JVM 上下文中成为可直接执行的方法。...一、main 方法为什么是公有方法 在 Java 中定义了一些访问修饰符,程序中的每个方法都可以加上任何一种访问修饰符。...对于 main 方法来说因为需要在 main 类之外的地方也能访问到因此就需要指定为公有方法。

    55540

    java 主方法--main【笔记】

    人和人之间要产生深度链接,是需要一起共事的。 今天给大家分享【java 主方法--main】。...main 是java程序的入口(Java 虚拟机运行程序的时候首先找的就是 main 方法),一个 java 程序的运行必须有且仅有一个 main 方法。...Java 程序利用 main 函数中 args 参数实现参数的传递(多参传递空格处理) 用控制台编译运行: $ javac Test.java $ java Test I am lucky....,这样 Java 虚拟机就可以找到 main() 方法,从而来运行 javac 程序。...static:表明方法是静态的,不依赖类的对象的,是属于类的,在类加载的时候 main() 方法也随着加载到内存中去。 void:方法是不需要返回值的。 main:约定俗成,规定的。

    83420

    关于java 中的main函数

    我们刚开始写java 程序最常见的除了System.out.println( );之外应该就是 public static void main( String arg[ ] ){ …… }了。...我们通常称之为主函数或者main函数。公共和静态就不用说了,这是java程序的一个入口,而String args [ ]里面是一些命令参数。...一点解释: 其中main()是一个前台线程,前台进程是程序中必须执行完成的,而后台线程则是java中所有前台结束后结束,不管有没有完成,后台线程主要用与内存分配等方面。...后台线程用于处理时间较短的任务,如在一个Web服务器中可以利用后台线程来处理客户端发过来的请求信息。...前台线程一般用于处理需要长时间等待的任务,如在Web服务器中的监听客户端请求的程序,或是定时对某些系统资源进行扫描 的程序。

    1.9K20

    Java中String类的构造方法

    参考链接: java-string-endswith String类的构造方法  String代表字符串,字符串是由多个字符组成的一串数据,字符串可以看成字符数组, 1.字符串字面值“abc”也可以看成一个字符串的对象...  因为字符串的值是在方法区的常量池中划分空间分配地址值  a:如何理解这句话 String s = “hello” ; s = “world” + “java”; 问s的结果是多少? ...他的内存图   String s = new String(“hello”)和String s = “hello”;的区别   1.首先,通过main()方法进栈。...因为,类String重写了equals()方法,它比较的是引用类型的 的值是否相等,所以输出true。...public static String valueOf(int i): 把int类型的数据转成字符串。 注意:String类的valueOf方法可以把任意类型的数据转成字符串。

    67530

    JAVA中File类的实用方法

    今天,小结一下JAVA的File类吧,它描述了文件本身的属性。File对象用来获取或处理与磁盘文件相关的信息,例如权限,时间,日期和目录路径,简单而言,也就是文件操作。       ...File类中实用的一些方法,            1.boolean createNewFile()  创建新文件是判断是否存在            2.boolean delete() 文件删除...String getName() 获取文件名            9.String getPath() 获取文件路径           10.long lastModified() 获取最后一次修改的时间...          11.long length() 获取文件大小           12.boolean renameTo(File f) 文件重命名 编写程序,列出指定路径下的所有文件的文件名

    45920

    Java基础-Object类中的方法

    下面这些是 Java 中的 Object 类中方法,共 11 个,9 种方法,wait() 方法被重载了。...Object 类可以说是 Java 类的始祖类,其中有一些方法也是预留给了后代类,也即是上面表中没有 final 关键字修饰的方法,有 clone() 方法,equals() 方法,finalize()...,该类没有实际重写父类中的 clone() 方法,只是简单的调用了父类的 clone() 方法。...C++ 的析构函数功能是不一样的,C++ 中使用析构函数来清除一个对象,而 Java 中清除对象的工作是由 Java 虚拟机帮我们完成的。...Java 中设计这个方法只是想在垃圾回收器将对象从内存中清除前做一些其他自定义的清理工作,在未来的 JDK 版本中,这个方法很有可能会被取消。

    77030

    Java中String类的concat方法

    参考链接: java-string-concat Java中String类的concat方法  在了解concat()之前,首先需要明确的是String的两点特殊性。 ...长度不可变值不可变  这两点从源码中对String的声明可以体现:    private final char[] value ;  其中final对应值的不可更改的特性;而char[]对应String...otherLen);         str.getChars(buf, len);         return new String(buf, true);     }  源码分析:  concat()方法首先获取拼接字符串的长度...,通过Arrays类的copyOf方法复制源数组,然后通过getChars方法将拼接字符串拼接到源字符串中,然后将新串返回。...API中也对这个方法进行了解释:   如果参数字符串的长度为 0,则返回此 String 对象。

    77930
    领券