用interface来存储常量,这样常量会在初始化的时候加载好,不能被改变。java
public interface SystemKey { /** 日志记录的log*/ Log log = LogUtil.get(); }
这样子修饰变量的时候,log会自动加上 public static final。其实这里传递的是传指针(传的是地址)占用的空间不多。node
这样子变量就是常量了。log的值是不能改变的。要想改变能够用类来实现。ide
能够这样实现:指针
public class SystemKey { private Map<String, Object> keys; static SystemKey key = new SystemKey(); private SystemKey(){ update(); } public static String getNodeID(){ if(nodeId == null){ update("local_default_nodeId"); } return nodeID; } public static void update(){ ............ } }
要得到nodeID的话就直接用SystemKey.getNodeID()就能够得到了。日志