java用什么实现全局变量 我在用java做个application,现遇到一个问题。登陆后,想在以后都能使用该用户的基本信息,比如userid,department等,可java中没有全局变量之说,我应该用什么办法实现呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 定义一个用户类,实例化成static 对象,但这样要注意,整个程序中要注意不要随意改变该对象的内容. static 静态成员变量可以解决你的问题 public class MyBean{ public static final String dd="Global";} 用static 可以达到全局变量 效果 public static String AAA = ""; 专门定义一个类,内部使用static定义变量,该变量就可以全局访问了。 写一个用户的类,类中只包含需要的属性,使用static声明 static 静态方法或是构造方法中声明都可以啊! //用类属性(static修饰),不过看你的样子最好不要这样,不然你的这个东西只能是你一个人用的,用传参吧,要充分利用对象思想 其实楼上的都说得很清楚了,这里就举个例子吧:class Person(){public static userid;public sattic department;.....}请指正。 最好用传参数,将某个类(类中包含你想要的变量)作为参数下传,即可调用类的所有public 变量,你说的那两个变量也可以定义为public类型,赋值后,直接通过参数类调用参数即可。当然也有很多其他方法。 大家都说了这么多了,我想应该是使用static 1、传参最好2、static,但如果创建两个或两个以上对象就不太好了 singlton 设计模式 public class CGlobalVar{ private String userid = null; private static CGlobalVar globalVar; private CGlobalVar (){ } public static CGlobalVar getInstance(){ if(null == globalVar){ globalVar = new CGlobalVar(); } return globalVar; } public void setUserid(String pUserid) { userid = pUserid; } public String getUserid() { return userid; } }使用方法: CGlobalVar globalVar = CGlobalVar.getInstance(); globalVar.setUserid("flashdragon"); String userid = globalVar.getUserid(); public static final int a=1;就是java常量,它是在编译时把所有a替换成1,不过它比C++中宏定义好的地方是,它是编译过程中替换而不是编译前的字符串替换。或者说“先计算,再替换”例如public static final int a=1+3;c=a*5替换成4*5而不是1+3*5 做软件开发这一行做java必须要掌握这么多的知识吗? 发送一个Mail,收件人有多个时,有没有办法让每个收件人的主题都是你好+"收件人名字" 斯坦福大学java课程,关于交换数组元素的疑问。。。 求教如何弹对话框 急求一个小程序 关于访问控制符的疑问? 各位大侠请给小弟看看! 谁知道为什么会有Action类,它和ActionListener的区别是什么 我用String.indexOf(string)获取字符串时遇到的问题? 怎么学习java? Java终止线程问题 java里有数据集的概念吗 是否和C#有相似之处 !@@
实例化成static 对象,但这样要注意,整个程序中要注意不要随意改变该对象的内容.
public static final String dd="Global";
}
{
public static userid;
public sattic department;
.....
}请指正。
当然也有很多其他方法。
2、static,但如果创建两个或两个以上对象就不太好了
private String userid = null;
private static CGlobalVar globalVar;
private CGlobalVar (){
}
public static CGlobalVar getInstance(){
if(null == globalVar){
globalVar = new CGlobalVar();
}
return globalVar;
}
public void setUserid(String pUserid) {
userid = pUserid;
} public String getUserid() {
return userid;
}
}使用方法:
CGlobalVar globalVar = CGlobalVar.getInstance();
globalVar.setUserid("flashdragon");
String userid = globalVar.getUserid();
例如
public static final int a=1+3;
c=a*5替换成4*5
而不是1+3*5