这今天我碰到了一个问题,之前的代码(别人写的)中出现了很多的 static 的修饰,无论是方法还是属性!当我想知道这样做会对程序有什么影响?如果能够解决这个问题!

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【zhengweijava】截止到2008-07-31 10:41:55的历史汇总数据(不包括此帖):
    发帖的总数量:1                        发帖的总分数:10                       每贴平均分数:10                       
    回帖的总数量:2                        得分贴总数量:2                        回帖的得分率:100%                     
    结贴的总数量:0                        结贴的总分数:0                        
    无满意结贴数:0                        无满意结贴分:0                        
    未结的帖子数:1                        未结的总分数:10                       
    结贴的百分比:0.00  %               结分的百分比:0.00  %                  
    无满意结贴率:---------------------无满意结分率:---------------------
    如何结贴请参考这里:http://topic.csdn.net/u/20080501/09/ef7ba1b3-6466-49f6-9d92-36fe6d471dd1.html

    取消马甲机器人,请点这里:http://www.java2000.net/mycsdn/robotStop.jsp?usern=zhengweijava
      

  2.   

    static 就是可以用类直接调用,不用创建新的对象,
      

  3.   

    只根本类相关,跟具体的对象没有关系的一般写作static的。或者是作为工具类提供一些static方法专门处理其他类的一些事物。
    比如Math类里面的方法都是static的,就是专门做一些数学运算。而运算的对象和Math类没有关系.
      

  4.   

    static可能出现线程安全问题如果加上syn...(记不住了,汗)修饰符,来保证线程安全
    将会影响速度
      

  5.   

       首先,谢谢各位,但是你们还没有明白我想要表达的意思,我是想要知道,如果用 static 多了,对我的程序将会产生什么样的影响,比如: 效率上,安全上,内存上!!!
      

  6.   

    所有类的对象及子对象间共享,不依赖于具体实例,因此this在静态方法中是不凑效滴
      

  7.   

    对并发的请求会产生影响,因为static属性的方法都是虚拟机来保证同步的,所以就是说,static方法默认都是存在synchronize修饰的,该方法只能单线程访问,如果是多线程的程序,肯定效率上不高。
      

  8.   

    当你得方法需要访问所有static属性时,
    当你得方法不需要用对象访问时,
      

  9.   

    也是说,如果要用struts的话,也就是说,标签啦,要进行重复利用进,这样会显示struts最明显的作用啦,也是struts架构核心呀,