Java里面有类变量,做法是在类成员前面加上static关键字,如果想做到多线程安全性,可以做一个类锁譬如 public class Test { public static byte [] array={...}; public static Object lock; public void operate() { synchronized(lock) { 具体的操作//该类的多个实例共享同一个变量,共享同一个锁 } } }
情况是这样的,我直接在一个JSP页面里定义的全局变量,是这样写的: <%@ page import="java.util.*,java.sql.*,java.io.*,java.text.DateFormat,java.util.Date,javax.servlet.http.*,javax.servlet.*"%> <%! int[] hole_num=new int[10]; int[][] found_hole=new int[10][2]; public class test extends Thread{ public void run(){ ...... found_hole[com_order][0]=0; found_hole[com_order][1]=count; ...... }} 在这里面就可以直接用到它
不懂你整public class test extends Thread{干啥用,还要同步,同步什么呀,你那个数组根本就不是static的,怎么同步.上面回答同步的兄弟们,你们知道怎么才能够同步?
//你的代码
}
public class Test
{
public static byte [] array={...};
public static Object lock; public void operate()
{
synchronized(lock)
{
具体的操作//该类的多个实例共享同一个变量,共享同一个锁
}
}
}
<%@ page import="java.util.*,java.sql.*,java.io.*,java.text.DateFormat,java.util.Date,javax.servlet.http.*,javax.servlet.*"%>
<%!
int[] hole_num=new int[10];
int[][] found_hole=new int[10][2];
public class test extends Thread{
public void run(){
......
found_hole[com_order][0]=0;
found_hole[com_order][1]=count;
......
}}
在这里面就可以直接用到它