全局变量?你是如何做到的呀?:)想不出java中哪里可以定义全局变量,除非是static的。编别的程序有什么原则,java也一样。

解决方案 »

  1.   

    gcli123456, IBM上有几篇文章很不错, 你可以去看看 ... 另外, 你可能需要用诸如JTest之类的工具对代码进行测试, 虽然不能完全依照它的标准, 但相信会对你有一点帮助 ... 另外, 如果是写24 X 7的那种server端(如果是client, 出于兴趣也可以:p)程序, 你就必须注意内存漏洞的问题, 关于这些, IBM上有篇文章写得很清楚, 去看看就知道乐, 呵呵 ...
      

  2.   

    哦 ... 还有, 如果是为了让自己的代码看起来舒服一点的话呢, 还有个JIndent, 能美化你的代码(格式), *非常*不错 :)
      

  3.   

    Dureek(普博) 谢谢!能说出具体地址吗?
      

  4.   

    JTest  : http://www.parasoft.com/products/jtest/
    JIndent: http://home.wtal.de/software-solutions/jindent/frameset.html
    IBM的文章去IBM的开发人员专栏(JAVA版)就好了 ...... 这些问题还是应该请QA高手来, 呵呵 ... 
      

  5.   

    http://www.ambysoft.com/javaCodingStandards.html上面这个地址也可以去看看 ... 
      

  6.   

    gcli123456, 作为交换, 我要问你问题乐, 呵呵 ...你对MQ熟悉吗? 我以前没接触过:p 我不知道各种MQ的实现是不是不同的? 队列中不知是否应该有顺序可言? 在j2ee(1.3beta)中(jmsri), 我发现默认队列排列方式和想象中有些出入 ...比如第一次我send了3个消息, 依次是1, 2 和 3;
    第二次我send了3个消息, 依次是4, 5 和 6;
    结果取出来的时候是 4, 1, 5, 2, 6 和 3, 呵呵 ... 我现在知道这中排列方式的规律, 但问题是不知道为什么要这样 ... 而且我不清楚其它的MQ是否会不同呢?
      

  7.   

    很遗憾我对MQ不是很熟,因为我的项目组,几乎不用MQ ,但我们公司的其他项目组有用的,我给你问问~~~~
      

  8.   

    不了, 还是先等你回答问题吧 ... 1? 不对啊, 怎么这里就我们两个人吗? faint ...
      

  9.   

    to:gcli123456
    这里有一篇关于文章,你可以看看http://www.apusic.com/club/images/jpt.zip
      

  10.   

    to:Dureek你上面问gclil23456的问题,我挺感兴趣,不知回答的对不对
    JMS在处理消息时分读取消息和发送消息两种情况:
    读取消息:
    当多个会话同时读取一个目的地的消息时,他们会交叉读取队列的头元素
    发送消息:
    JMS只能保证同一个会话发给同一个目的地的消息是按发送顺序排列的,但是碰到下面的情况
    可能会有些改变:
        1.如果这些消息的优先级不同,优先级高的会排在优先级低的前面
        2.如果用户既发送DeliverMode为Persistence,也发送Non persistence的消息,JMS只能保证同一种DeliverMode的消息是按顺序排列的。
        3.如果发送消息的会话是事务型会话,它发出去的消息是按发送顺序排列的(优先级情况和第一条相同)
      

  11.   

    所有的程序开发手册都包含了各种规则。一些习惯自由程序人员可能对这些规则很不适应,但是在多个开发人员共同写作的情况下,这些规则是必需的。这不仅仅是为了开发效率来考虑,而且也是为了后期维护考虑。命名规范 
    定义这个规范的目的是让项目中所有的文档都看起来像一个人写的,增加可读性,减少项目组中因为换人而带来的损失。(这些规范并不是一定要绝对遵守,但是一定要让程序有良好的可读性) 
    Package 的命名 
    Package 的名字应该都是由一个小写单词组成。 
    Class 的命名 
    Class 的名字必须由大写字母开头而其他字母都小写的单词组成 
    Class 变量的命名 
    变量的名字必须用一个小写字母开头。后面的单词用大写字母开头。 
    Static Final 变量的命名 
    Static Final 变量的名字应该都大写,并且指出完整含义。 
    参数的命名 
    参数的名字必须和变量的命名规范一致。 
    数组的命名 
    数组应该总是用下面的方式来命名: byte[] buffer;

     
    而不是: byte buffer[];

     方法的参数 
    使用有意义的参数命名,如果可能的话,使用和要赋值的字段一样的名字: SetCounter(int size){
    this.size = size; 
    性能 
    在写代码的时候,从头至尾都应该考虑性能问题。这不是说时间都应该浪费在优化代码上,而是我们时刻应该提醒自己要注意代码的效率。比如:如果没有时间来实现一个高效的算法,那么我们应该在文档中记录下来,以便在以后有空的时候再来实现她。 不是所有的人都同意在写代码的时候应该优化性能这个观点的,他们认为性能优化的问题应该在项目的后期再去考虑,也就是在程序的轮廓已经实现了以后。 
    不必要的对象构造 
    不要在循环中构造和释放对象 
    使用 StringBuffer 对象 
    在处理 String 的时候要尽量使用 StringBuffer 类,StringBuffer 类是构成 String 类的基础。String 类将 StringBuffer 类封装了起来,(以花费更多时间为代价)为开发人员提供了一个安全的接口。当我们在构造字符串的时候,我们应该用 StringBuffer 来实现大部分的工作,当工作完成后将 StringBuffer 对象再转换为需要的 String 对象。比如:如果有一个字符串必须不断地在其后添加许多字符来完成构造,那么我们应该使用 StringBuffer 对象和她的 append() 方法。如果我们用 String 对象代替 StringBuffer 对象的话,会花费许多不必要的创建和释放对象的 CPU 时间。 避免太多的使用 synchronized 关键字 
    避免不必要的使用关键字 synchronized,应该在必要的时候再使用她,这是一个避免死锁的好方法。 
      

  12.   

    谢谢needle :)
    其它的MQ呢?基本都一样吗?
      

  13.   

    看看《java编程思想》这本书吧。
      

  14.   

    gcli123456, 等你消息 :)//云游回来啦, 呵呵 ...