import java.util.*;
class systemdemo01
{
public static void main(String[] args)
{
System.out.println("Hello World!");
propertest();
}
public void propertest()
{
System.setProperty("ABABABABABABABABA","这里当然是属性的值了");
/*获取java加载时的系统属性*/
System.out.println("------------*获取java加载时的系统属性*---------");
Properties pro = System.getProperties();//备注:Properties属于hashtable的子类,hashtable属于map的子类,故可以用获取map集合元素的方法获取Properties中的元素
for(Object value : pro.keySet())
{
String str=(String)value;
System.out.println(str+"="+pro.get(str));
}
/*获取java加载时指定的属性信息*/
System.out.println("------------*获取java加载时指定的属性*---------");
String name=System.getProperty("user.name");
System.out.println(name);
/*设置java加载时显示自己设置的系统属性*/
System.setProperty("ABABABABABABABABA","这里当然是属性的值了");
//String key = System.getProperty("ABABABABABABABABA");
System.out.println("ABABABABABABABABA="+System.getProperty("ABABABABABABABABA"));
}
}
如果我在propertest()函数前面不加static的话,编译显示:
无法在静态上下文中引用非静态方法propertest()
加上static后就可以编译并且运行了,请问这个地方为什么一定要加static呢?
什么情况下一定要用到static呢?对这个关键字的用法不是很理解,求大神指导!
|
|