⑴ java中能不能定义一个全局变量,使两个类共享这个变量
首先复要注意的是 java 是面向对制像,只要实例化对像了,那对像的属性就这么个样,
想什么调用从在哪调用都可以
所以想要一个什么全局变量,就该想到要让这个全局变量在哪里容身。
1、容身于实例,在类里面用public 来定义这个变量,则要用到这个变量时,必须得有这个类的实例。
2、容身于虚拟机,在类里面用static来定义,这样子只要加载过这个类,这个变量就一直存在,在哪都方便调用 类名.变量
⑵ java中如何设置全局变量使之在多个类中使用.
Java可以通过设置一个接口,让实现的每个子类都必须要实现里面的方法,这样就实现了全局变量可以多个类使用。
还可以通过给变量设置static final关键字,不用实例化,即可使用。
⑶ 在java中怎么定义一个全局变量
在一个全局类里面定义公共静态变量
publicclassGlobal
{
publicstaticintabc=0;
publicstaticintdef=0;
}
------解决方案--------------------
/**
*<p>Title:Global</p>
*<p>Description:定义系统中使用的常量</p>
*<p>Copyright:Copyright(c)2004</p>
*<p>Company:hptec</p>
*@authorihavegotyou
*@version1.0,2004/1/12
*/
publicinterfaceGlobal{
StringTIME_FORMAT="yyyy-MM-ddHH:mm:ss";//时间格式
StringKEY_CONFIG="infoservice-admin";//系统配置文件的名字
StringAPP_CONFIG="infoservice-app";//应用程序配置文件
charSPLIT_CHAR='.';
StringBOARD_MESSAGE="borad.message";//board.jsp显示的操作信息
StringERROR_MESSAGE="您的操作失败!";
StringSUCCESS_MESSAGE="您的操作成功!";
StringHIBERNATE_SESSION_FACTORY="hibernate.sessionfactory";
intPAGESIZE=20;
StringREQUEST_SENDMESSAGE="request_sendmessage";
//存放由Action生成的业务结果放入request.setAttribute(???,var)
StringTABLE_PAYDETAIL_LIST="table.paydetail.list";
StringTABLE_MESSAGEOUT_LIST="table.messageout.list";
StringTABLE_MESSAGEIN_LIST="table.messagein.list";
StringTABLE_MESSAGE_LIST="table.message.list";
StringTABLE_CONTENT_LIST="table.content.list";
StringTABLE_SERVICE_LIST="table.service.list";
StringTABLE_USER2SERVICE_LIST="table.user2service.list";
StringTABLE_USER2SERVICEOLD_LIST="table.user2serviceold.list";
StringTABLE_SERVICE_RECORD="table.service.record";
StringTABLE_USER_RECORD="table.user.record";
StringINFOMESSAGEOUT_AND_REPORT="table.messageout.and.report.record";
StringTABLE_LIMITUSER_LIST="table.limituser.list";
StringTABLE_LIMITCONTENT_LIST="table.limitcontent.list";
//存放由Action生成的业务结果的相关信息request.setAttribute(???,var)
StringQUERY_INFO_CONTENT_LIST="query.info.content.list";
StringQUERY_INFO_USER2SERVICE_LIST="query.info.user2service.list";
StringQUERY_INFO_USER2SERVICEOLD_LIST="query.info.user2serviceold.list";
StringQUERY_INFO_SERVICE_LIST="query.info.service.list";
StringQUERY_INFO_MESSAGEOUT_LIST="query.info.messageout.list";
StringQUERY_INFO_MESSAGEIN_LIST="query.info.messagein.list";
StringQUERY_INFO_MESSAGE_LIST="query.info.message.list";
StringQUERY_INFO_PAYDETAIL_LIST="query.info.paydetail.list";
StringQUERY_LIMITUSER_LIST="query.limituser.list";
StringQUERY_LIMITCONTENT_LIST="query.limitcontent.list";
StringQUERY_TCSUBSERVICEBYSP_LIST="query.tcsubservicebysp.list";
StringQUERY_TCSUBSERVICEBYUSERID_LIST="query.tcsubservicebyuserid.list";
}
//接口中的变量默认是finalstatic的
来自www.MyException.Cn网友分享
⑷ java如何设置全局变量
ava不同于C/C++,其所有的方法和变量都被封装在类中,因此不能像C/C++那样直接在版main函数中声明全局权变量。
java中的全局变量则通过另外的方式来实现,即单独写一个全局变量类,其它类中可通过类名访问该类的所有public static 变量。
example:
public class MsgQueue
{
private MsgQueue(){}
static ConcurrentLinkedQueue<String> sendMsgQueue = new ConcurrentLinkedQueue<String>();
}
上面的sendMsgQueue就是全局变量;
访问方式如下:
MsgQueue.sendMsgQueue.....
⑸ “java”中什么是全局变量
java崇尚万物皆对象,所以一切变量都在类中,但是全局变量就是在所有的地方都可以引用到,但是java不存在一个类的变量不通过对象的组合在另一个类中还可以使用,两者冲突