
使用Scanner这个类
import javautilScanner;//导入Scanner类
Scanner sc=new Scanner(Systemin);//创建一个Scanner类实例
String s=scnext();//获得从命令行输入的字符串作为变量
你运行一下下边代码吧
--------------------------------------------------------
import javalangreflectField;
public class Test {
public static void main(String[] args) {
Field[] fields = BeanclassgetDeclaredFields();
for (int i = 0; i < fieldslength; i++) {
Systemoutprintln(fields[i]getName());
Systemoutprintln(fields[i]getType()getName());
}
}
}
class Bean {
int age = 0;
String name = null;
}
用eprintStackTrace();
如果你是说你程序中的用到的堆栈,可以在finally{}块中把堆栈的内容输出来。
StackTrace ss = new StackTrace(true);
String flName = ssGetFrame(1)GetFileName();// GetMethod()DeclaringType;
int lineNo = ssGetFrame(1)GetFileLineNumber();
String methodName = ssGetFrame(1)GetMethod()Name;
这是 C# 的调用栈上的内容
java 中也有一个,
StackTraceElement calledSte = getCallStackTraceElement();
int lineNo = calledStegetLineNumber();
String className = calledStegetClassName();
String methodName = calledStegetMethodName();
import
javalangreflectField;
public
class
Test
{
private
int
i;
protected
String
b;
public
long
s;
double
d;
public
void
total()
{
Class
cls
=
getClass();
//得到Test类的Class对象
Field[]
f
=
clsgetDeclaredFields();
//得到Class对里的成员数组
int
count
=
0;
//成员变量的个数
for(Field
ff
:
f)
//遍历
{
count++;
}
Systemoutprintln(count);
}
public
static
void
main(String[]
args)
{
Test
t
=
new
Test();
ttotal();
}
}
应该够清楚了吧
以上就是关于java 怎么从命令行获取自变量全部的内容,包括:java 怎么从命令行获取自变量、java 从内存中得到声明的变量的类型和变量名、JAVA或者C#中如何获取并输出调用堆栈上的变量值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)