2 qq 28247769 qq_28247769 于 2016.05.08 15:14 提问

静态块中调用方法改变静态成员的问题

在一个公共类中,有一个静态块,然后还有一些方法,请问怎样通过这些方法来改变静态
快中的静态成员,比如add(String,String,String),想要一个处理页面通过调用这个方法
来改变静态成员??一直会出错。。
public class sport_online {
private static String uName[];
private static String uNickName[];
private static String uSex[];
public static String room;
private static int total;
static{
uName=new String[50];
uNickName=new String[50];
uSex=new String[50];
room="sport_room";
total=0;

}
public void add(String UserName,String NickName,String Sex){
if(get_total()<50){
uName[total]=UserName;
uNickName[total]=NickName;
uSex[total]=Sex;
total++;
}else{
System.out.println("人数已满");
}
}
public void delete(String UserName){
for(int i=0;i<total;i++){
if(uName[i].equals(UserName))
{
for(int j=i;j<total-1;j++){
uName[j]=uName[j+1];
uNickName[j]=uNickName[j+1];
uSex[j]=uSex[j+1];
}
total--;
}
}
}
@SuppressWarnings("unused")
public int find(String UserName){
for(int i=0;i<total;i++){
if(uName[i].equals(UserName))
return i+1;

        return 0;
}
return 0;

}
public String get_uName(int num){
if(num<50)
return uName[num];
return null;
}
public String get_uNickName(int num){
if(num<50)
return uNickName[num];
return null;
}
public String get_uSex(int num){
if(num<50)
return uSex[num];
return null;
}
public String get_room(){
return room;
}

public int get_total(){
return total;
}


```在一个公共类javabean中,有一个静态块,然后还有一些方法,请问可以通过这些方法来改变静态
快中的静态成员吗?比如add(String,String,String),想要一个处理页面通过调用javabean中的这个add()来改变静态成员吗?我做的是聊天室系统,希望通过每次进来一个人来调用add()方法最终得到索引,获得目前在线人数和自己的位置。就是想问可以这样调用来改变静态快中静态变量吗?

3个回答

CSDNXIAON
CSDNXIAON   2016.05.08 15:22

静态成员变量及方法的调用
静态成员变量及方法的调用
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

yonghuwangwei
yonghuwangwei   2016.05.08 15:24

把错误贴出来,不知道你有什么错

Even_sneck
Even_sneck   2016.05.08 23:37

没有什么好纠结的,调用方法的时候,把这些参考传入,然后在方法进行变量值更改

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
java类的静态属性和静态块执行时间
java类的静态属性和静态块执行条件如下所示: 1.如果java类在项目启动的时候,就创建了实例(例如new Person())或者此类的对象交给spring框架管理(依赖注入ioc),那么项目启动的时候就执行这个Java类的所有属性(包括静态和非静态属性)和static块。总体来说,创建此java类的对象的时候就会执行。 2.更多详情分析地址:http://yayih
static 静态变量和静态代码块的执行顺序
众所周知 在android中static 修饰的会被称之为 静态常量, 静态变量, 静态方法 ,还有就是静态代码块,用static{ // 代码块 非static修饰的方法,变量,常量, 是不能再静态代码块中使用的 } 表示。        static修饰的 是跟着类走的, 而不是跟随对象,这个大家都是知道的。 那么大家是否知道它们之间的运行顺序的关系呢? 今天, 我就给大家简单讲解一下吧。
java基础---静态变量、静态块、非静态块、构造函数及静态方法总结及一点儿想法
java基础---静态变量、静态块、非静态块、构造函数及静态方法总结及一点儿想法
Java中的静态成员
static修饰符可以用来修饰类的成员变量、成员方法和代码块。类变量 (静态变量)类的成员变量有两种:一种是用static修饰的变量叫静态变量(访问方式:1、类名.变量名。2、对象名.变量名)。另一种是没有被static修饰的变量叫做实例变量。 静态变量与实例变量的区别:静态变量在内存中只占一份备份,所有对象共享静态变量的值。而非静态变量只要用new创建一个新对象后就在内存中分配一份空间给他。并且
java 静态变量和静态块底层原理
Java静态变量的初始化(static块的本质) 在网上看到了下面的一段代码: public class Test {       static {            _i = 20;        }       public static int _i = 10;              public static void main(String[] args) {
java中的静态变量、静态方法与静态代码块区别
我们知道类的生命周期分为装载、连接、初始化、使用和卸载的五个过程。 其中静态代码在类的初始化阶段被初始化。而非静态代码则在类的使用阶段(也就是实例化一个类的时候)才会被初始化。 静态变量 可以将静态变量理解为类变量(与对象无关),而实例变量则属于一个特定的对象。 静态变量有两种情况: 静态变量是基本数据类型,这种情况下在类的外部不必创建该类的实例就
java 中类初始化,构造方法,静态成员变量,静态块的加载顺序
1、编译和运行概念要搞清:编译即javac的过程,负责将.java文件compile成.class文件,主要是类型、格式检查与编译成字节码文件,而加载是指java *的过程,将.class文件加载到内存中去解释执行,即运行的时候才会有加载一说。2、类的加载时机,肯定是在运行时,但并不是一次性全部加载,而是按需动态,依靠反射来实现动态加载,一般来说一个class只会被加载一次,之后就会从jvm的cla
Java的静态变量,成员变量,静态代码块,构造块的加载顺序
问题的产生来自下面这个链接(http://bbs.csdn.net/topics/391908395)public class StaticTest{ public static void main(String args[]){ staticFunction(); } static StaticTest st = new StaticTest();
面试题--JAVA中静态块、静态变量加载顺序详解
public class test { //1.第一步,准备加载类 public static void main(String[] args) { new test(); //4.第四步,new一个类,但在new之前要处理匿名代码块 } static
java中静态块,静态属性,方法的加载顺序
这两天遇到几个类似的问题,就是一个程序到底是怎么运行的,而且这些问题很具有迷惑性,这里两个例子做分析( 实际上一切都在黑马的免费视频中有体现 ) ! 问题一:如下代码的执行顺序是什么样的!一定理解:是执行的顺序(后面会给大家说一个误区)! class Test{ int a = 5; static int num = 4;