java中不使用main方法输出一条语句输出一条语句可以吗

问题描述

今天遇到这样一个问题,我个人感觉是不可以的,因为一个程序如果没有主入口,就没法运行。但是不太确定,如果有知道的话,麻烦告诉我一声,先谢谢了

解决方案

main 方法可以省略 public ? static ? 返回值可以是 int ? 形参可以省略吗? 可以在main 中调用 main 方法吗? 首先Java规定了main()方法必须是公共的,以便于外部程序对主方法的访问,因为程序都是从main()方法起始的,并且main()方法也必须是静态的,首先,为什么要用public: 因为在运行程序时,jvm要调用main方法,但我们都应该知道jvm是一个软件并不是硬件,并且它与main方法所在的包是不同的,所以jvm要调用main方法时,main方法就必须声明为public;否则jvm就无法找到和调用main方法,此时程序就无法运行。 第二,为什么要用static: 因为如果不适用static,就只能创造一个实例去调用main方法,但是jvm并不知道如何去创造一个实例,而你要创造一个实例时,必须要在main方法里头使用new这个关键字,但此时jvm无法调用main方法,所以就无法创造一个实例去调用main方法,所以main方法必须声明为static。很大程度上这是为了安全性的考虑 因为用static修饰的方法或变量是在编译时运行或分配空间的,main用static修饰后,程序就能自动找到程序的main的入口 第三,为什么要用void: 1、main方法根本就不需要返回值; 2、如果你返回了值,也不能看到,那此时jvm也不知道拿这个返回值来干什么,所以就用void。java中main函数的参数args[ ]怎么使用?参考代码:public class Test {public static void main (String[] args) {if (args.length == 0) {System.out.println ("您调用main方法时没有指定任何参数!");return;}System.out.println ("您调用main方法时指定的参数包括:");for (int i = 0; i<args.length; i++) {System.out.println ("参数" + (i+1) + "的值为:" + args[i]);}} } 分类: java
解决方案二:
你说的对了。。。必须有入口函数
解决方案三:
不可以呀,程序必须有入口函数呀

时间: 2024-11-15 21:05:20

java中不使用main方法输出一条语句输出一条语句可以吗的相关文章

java中为什么在main方法里面写sleep方法报错

问题描述 java中为什么在main方法里面写sleep方法报错 java中为什么在main方法里面写sleep方法报错,能看到图片吗,图片里有详细代码 解决方案 import java.lang.Thread;有没有加上 解决方案二: 开发建议采用Eclipse开发工具,这样导包和异常处理就很方便了. 解决方案三: 开发建议采用Eclipse开发工具,这样导包和异常处理就很方便了. 解决方案四: java中main()方法是哪个类里面的方法?JAVA中sleep().wait().yield(

java中除了非void方法有返回值需要用到return语句外

问题描述 java中除了非void方法有返回值需要用到return语句外 java中除了非void方法有返回值需要用到return语句外,还有其他什么语句需要retrun语句 因为我看程序源码的时候看到一个方法有两条return 语句,我看来看去只发现这段程序代码只有一个方法,其中还有if....else if语句还有try....catch语句. 解决方案 如果直接return就跳出了这个方法,下面的程序不需用执行,否则还会继续下面的逻辑;代码有时候需要捕捉特定的异常给用户一定的反馈,判断异常

java中final 变量作为方法的参数?怎么理解?见下面代码

问题描述 java中final 变量作为方法的参数?怎么理解?见下面代码 class NiMingLei { public static void main(String[] args) { Outer out= new Outer(); out.function(7); out.function(8); } } class Outer { static int y=4; void function(final int a) { class Inter { void method() { Sys

java中String的一些方法深入解析

以下是对java中String的一些方法进行了详细的分析介绍,需要的朋友可以参考下   1.public String(char[] c,begin,length).从字符数组c的下标begin处开始,将长度为length的字符数组转换为字符串. begin与length可以省略,即将字符数组c转换为字符串.另:字符数组可改为字节数组byte[] b.char[] c=new char[]{'j','y','6','a','4','t','9'}; String s1=new String(c)

java中 的变量在方法间的传递权限问题

问题描述 java中 的变量在方法间的传递权限问题 我现在定义了方法1(),在该方法里用了scanner获取了一个整数a,对这个整数进行了相关操作,返回了一个字符串s,但是我现在定义了一个方法2(),该方法要接收方法1()返回的字符串s,该方法同时也要用到方法1()中scanner获取的那个整数a,进行操作后返回一个整数b(b用main()函数接收),那么问题就来了,方法1只能返回一个字符串s,那么方法2()怎么获取方法1()的那个用scanner接收到的整数呢?我的想法是将方法1()中的sca

java中的类的方法的调用的问题

问题描述 java中的类的方法的调用的问题 新人初学java,有些概念不是很懂,还望各位能帮帮忙,谢谢 在java中,我知道静态方法(变量)可以直接类名.调用,而不用再创建对象, 但是我在学习枚举时遇到这样一个问题: public enum WeekDay{ MON,TUE,WEB,THU,FIR,SAT } public class TestEnum{ public void static main(String [] ,args){ WeekDay today = WeekDay.SAT;

java中如何让setText方法读取指定标签数据的时候特意空出一点点空间

问题描述 java中如何让setText方法读取指定标签数据的时候特意空出一点点空间 如何让setText方法读取指定标签数据的时候特意空出一点点空间java当中 解决方案 http://zhidao.baidu.com/link?url=znfx-j9HEz7fJS4EcXcc-gX096uqEKQMTQo4vBNrc9bhRAlFHGGxkAP8cPTOkATWxy3DqxQwhBwFAscWkNPxe_,用空字符串占位置看看可不可以也就是字符串前面有空格,后面有空格. 解决方案二: 使用全

Groovy脚本文件中的静态main方法

本文介绍Groovy中的静态main方法.先看如下代码: class Test1 { public Test1() { println "TEST1" } } class Test2 { public Test2() { println "TEST2" } static void main(args) { new Test1() } } 此代码不论用groovy命令行还是用groovyConsole来运行都要出错,好像是引用 groovy.lang.MissingM

在Java中进行事务处理的方法

摘要 本文介绍在Java中进行事务处理的方法,通过实例分别讲述了如何采用JavaBean.Ejb组件实现J2EE应用服务器支持的JDBC事务.JTA(Java Transaction API)事务. 关键词 JavaBean,EJB, 数据库,事务处理,JTA JavaBean JavaBean是用Java语言编写的与平台无关的组件.它是描述Java的软件组件模型,有点类似于Microsoft的COM组件的概念.在Java模型中,通过JavaBean可以无限扩充Java程序的功能,通过JavaB