打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
如何在java动态中类中配置常量定义别的数值的几种方法
如果我们在java开发的时候,必须给Configuration类中的CONFIG常量首次使用时给它非静态的规定一个数值时,但是这个时候我们肯定也不像去修改原始的代码,那我们还有三种方法去实现这个技术。
  第一种:使用一个static静态代码块来指定,然后在静态代码块中,我们去动态读取外部的一个Properties文件的值。
  import java.util.Properties;
  /**
  * 第一种实现方法
  * @author William
  *
  */
  public class Configuration {
  public static final String CONFIG;//常量声明时不马上初始化
  static {
  Properties properties = new Properties();
  //把一个properties读进来
  CONFIG = "properties.getConfig";//通过properties的配置项config来初始化我们的常量config
  }
  }
  第二种:我们可以配置Java的运行时配置,来指定一个-Dname=value的参数,这样也可以在类内部动态的接受到运行时指定的一个参数。
  /**
  * 第二种实现方法
  * @author William
  *
  */
  public class Configuration {
  public static final String CONFIG;//常量声明时不马上初始化
  static {
  CONFIG = System.getProperty("CONFIG");//通过系统的-D配置参数name=value形式来拿到这个配置值
  //如果是eclipse,右键->RUN AS->Run Configurations->arguments->VMarguments 里输入(-DCONFIG=我们想要加入的配置)
  }
  public static void main(String[] args) {
  System.out.println(Configuration.CONFIG);
  }
  }
  第三种:我们还可以读的到系统配置的PATH或者CLASSPATH里面的值,同理,我们也可以配置自己的环境变量,然后在程序中一样也能读到这些配置的环境变量。
  /**
  * 第三种实现方法
  * @author William
  *
  */
  public class Configuration {
  public static final String CONFIG;//常量声明时不马上初始化
  static {
  CONFIG = System.getenv("PATH");//通过System.getenv()方法可以拿到系统环境变量,但我自己指定的环境变量没有取得成功,如果有知道原因的给我留言哈谢谢
  }
  public static void main(String[] args) {
  System.out.println(Configuration.CONFIG);
  }
  }
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
关于系统读取properties配置文件的路径问题,包括打成jar包的运行文件
java.util.Properties和java.util.ResourceBundle类区别与用法
Spring为属性注入某个类的常量或方法的返回值
Java中过滤敏感词
java帮助类读取properties文件及获取指定key的值(转)
mybatis源码分析(1)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服