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编程中网络连接 我要如何赚积分下载PDF电子教程呢 各位帮帮忙,有个java程序不知哪错了 请教一个动态添加/删除控件,新添加控件不显示的问题(如果切换到其他窗口,再切换回来.就显示了)谢谢! 大家如何选择自己的JAVA发展路线? 数组在构造函数中初始化,却没用,到底哪错了!! 这个numberOfObjects不是应该为3么?求解释 请教一个小问题,请各位高手赐教 MFC的前途问题? 我用单机编译socket和ServerSocket程序,我应该怎样对自己的机器进行设置? 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