java什么是运行参数 java的类型参数是什么意思
大家好,感谢邀请,今天来为大家分享一下java什么是运行参数的问题,以及和java的类型参数是什么意思的一些困惑,大家要是还不太明白的话,也没有关系,因为接下来将为大家分享,希望可以帮助到大家,解决大家的问题,下面就开始吧!
请问java中,主函数中的参数有什么作用啊
是一个参数,String[]是类型,arguments是参数名
String[]是字符串数组,arguments被拿来储存命令行的参数,虽然在main里我们可能不会使用到这个参数,但是它是必须的,如:
public class test{
public static void main(String args[]){
if(arts.length==0)
System.out.println("没有输入任何参数!");
else
System.out.println("你输入的第一个参数是:"+args[0]);
}
}
------------------------------------
那么编译javac test.java之后,运行
java test
将输出“没有输入任何参数!”
运行
java test hello
将输出“hello”
如果输入多余的参数时,但是在main中没有引用所以将被忽略,只输出第一个参数而已
Java 的命令行 编译和运行参数 如:-cp 怎么理解
javac
用法:javac<选项><源文件>
其中,可能的选项包括:
-g生成所有调试信息
-g:none不生成任何调试信息
-g:{lines,vars,source}只生成某些调试信息
-nowarn不生成任何警告
-verbose输出有关编译器正在执行的操作的消息
-deprecation输出使用已过时的 API的源位置
-classpath<路径>指定查找用户类文件的位置
-cp<路径>指定查找用户类文件的位置
-sourcepath<路径>指定查找输入源文件的位置
-bootclasspath<路径>覆盖引导类文件的位置
-extdirs<目录>覆盖安装的扩展目录的位置
-endorseddirs<目录>覆盖签名的标准路径的位置
-d<目录>指定存放生成的类文件的位置
使用-d参数,如类中定义了包,则编译时会自动生成包,如:javac-d. helloworld.java
表示在当前目录下编译Helloworld类。.表示当前目录,如helloword中定义有包,则在当前目录下生成包:
-encoding<编码>指定源文件使用的字符编码
-source<版本>提供与指定版本的源兼容性
-target<版本>生成特定 VM版本的类文件
-version版本信息
-help输出标准选项的提要
-X输出非标准选项的提要
-J<标志>直接将<标志>传递给运行时系统
java
用法: java [-选项]类 [参数...]
(执行一个类)
或者 java [-选项]-jar jar文件 [参数...]
(执行一个jar文件)
其中,可能的选项包括:
-client选择"client" VM(ginger547:应该是指Virtual Machine)
-server选择"server" VM
-hotspot与"client" VM同义 [不赞成]
默认情况的VM是client.
-cp<一个文件夹和zip/jar文件组成的类搜索路径>
-classpath<一个文件夹和zip/jar文件组成的类搜索路径>
一个由文件夹,JAR压缩文件,或者ZIP压缩文件组成的用来搜索类的列表
-D<名字>=<值>
设置一个系统属性
-verbose[:class|gc|jni]
使详细输出变的可用
-version打印产品版本然后退出
-version:<值>
只运行指定版本
-showversion打印产品版本后继续
-jre-restrict-search|-jre-no-restrict-search
在版本搜索的时候,包含/排除用户私人的JRE
-?-help打印帮助信息
-X打印非标准选项帮助
-ea[:<包名>...|:<类名>]
-enableassertions[:<包名>...|:<类名>]
使断言可用
-da[:<包名>...|:<类名>]
-disableassertions[:<包名>...|:<类名>]
是断言不可用
-esa|-enablesystemassertions
使系统级断言可用
-dsa|-disablesystemassertions
使系统级断言不可用
-agentlib:<库名>[=<选项>]
加载本地代理库<库名>,例如.-agentlib:hprof
同时可查看,-agentlib:jdwp=help和-agentlib:hprof=help
-agentpath:<路径名>[=<选项>]
通过全路径名来加载本地代理库
-javaagent:<jar路径>[=<选项>]
加载Java编程语言代理,可查看 java.lang.instrument
java main方法中的命令行参数
作用:
当你使用命令行的形式运行.class文件时,向你的类传递参数.
C:\>java YourClassName参数1 [参数2参数3....]
参数之间用一个空格作为间隔符.
String[] args这个字符串数组是保存运行main函数时输入的参数的,例如main函数所在的类名为test那么你在cmd运行 java test a b c时,args[0]= a,args[1]=b, args[2]=c你就可以在你的程序中调用你输入的这些变量了。
args[]不就是那个字符串This is a simple Java program吗?
-------完全不是的,你理解不对。这样好了,你在运行的时候加个参数,比如 java test XX。然后在你的main函数里面加这段话:System.out.println("arg is"+args[0]),然后看看输出是什么?
是不是这个:
This is a simple Java program
arg is XX
在运行时输入java test xx yy zz,并且在你的main函数里面加这段话:System.out.println("arg is"+args[0]+""+args[1]+""+args[2]),然后看看输出是什么?
是不是:
This is a simple Java program
arg is xx yy zz
现在你理解了吗。。。
如果没关系,为什么程序中去掉String args[]会出现错误?
--------之所以去掉会出错在于,不带String args[]的main函数和带String args[]的main函数,本质上已经不是同一个函数了,java本身不存在不带String args[]的main函数,所以当然出错了。
java的类型参数是什么意思
应该是泛型中提到的一个概念,<T>表示传入任意参数,在给一个泛型类初始化的时候我们要给它传入具体的值,一般是一个类型,如String,Integer或者是一个java bean类型的数据,这时候,String是作为一个参数传过去的,但它表示的是一个字符串类型,也就是传入了String类型的参数。此时String就是一个参数,一个类型参数。如List<string> testList= new List<string>();一个泛型数组,我们要规定该list中只能传入字符串怎么办,这时就给他传入一个String类型参数,只要传入其他类型就会在编译期报错,这也是泛型的一个优点。
好了,文章到这里就结束啦,如果本次分享的java什么是运行参数和java的类型参数是什么意思问题对您有所帮助,还望关注下本站哦!