一般来说是这样的:
public final static int DLL_TYPE = 0;
private final static String path = "mainport/dll";

解决方案 »

  1.   

    最好还是使用频度最大的类中声明.
    很多人推荐的替换方式是
    getXXXX(){
      return XXX;
    }
    这种方式的.
    不过个人认为自己觉得好用就好.
      

  2.   

    public final static XXX xxx;
    public XXX getXXX() {
      return xxx;
    }
    一般用这样方法比较好,它可以不破坏封装性!
      

  3.   

    public interface JustTest{ /* */
        public static final int TEST1  =     0x0001;
        public static final int TEST2  =     0x0002;
        public static final int TEST3  =     0x0003;
    ......
    }
      

  4.   

    上面的JustTest中定义的东西,如果想用可以class A implements JustTest{
       int x = TEST1;
       int y = TEST2 + TEST3;
    }class B{
       int x = JustTest.TEST1;
    }
      

  5.   

    感觉不如C中的直接了当。
    各位还有什么绝招,都来讲讲看。
    没有什么的话我就要结帐了,注意up也有分,呵呵
      

  6.   

    首先,不要把常量放在interface中。geyf和shine333提供的方案,当反面教材来看就行了——这是一个名叫“Constant Interface”的反模式,收录于Anti-Patterns一书。一个类使用哪些常量,这是一个实现细节;一个类实现哪些interface,这是一个接口设计决策。不应该在设计决策中暴露实现细节。J2SE 1.5提供了static import的功能,解决了constant interface的问题。在J2SE 1.5正式发布之前,你可以用一个Singleton模式作为解决。Singleton模式的意图之一就是提供一个全局的统一访问点,正好与“全局变量”的作用相符。
      

  7.   

    public final class test{
      public final static int TEST1=1243;
      public final static String TEST2="1243";
      public final static float TEST3=1243.01;
      public final static int TEST4=243;
    }
    public class hello{
      void runtest(){
        int a=2+test.TEST1;
      }
    }
      

  8.   

    Schlemiel(维特根斯坦的扇子)说得不错,严重同意