Java.util.ResourceBundle.Control.needs Reload() Java.util.Resource Bundle.Control.getTimeToLive() Java.util.ResourceBundle.Control.newBundle() 描述 所述java.util.ResourceBundle.Control.needsReload(String baseName, Locale locale, String format, ClassLoader loader, ResourceBundle bundle, long loadTime) 方法确定是否在高速缓存中过期束需要重新加载根据loadTime给出的加载时间或其他一些标准。如果需要重新加载,则该方法返回true ; 否则是假的。 声明 以下是java.util.Control.needsReload()方法的声明 public boolean needsReload(String baseName, Locale locale, String format, ClassLoader loader, ResourceBundle bundle, long loadTime) 参数 baseName - 资源包的基本包名称,完全限定的类名 locale - 应为其实例化资源包的语言环境 format - 要加载的资源包格式 loader - 缓存中已过期的资源包实例 bundle - 应该为其实例化资源包的语言环境 loadTime - 加载bundle并将其放入缓存的时间 返回值 如果需要重新加载过期的bundle,则为true;否则为false。否则是假的。 异常 NullPointerException - 如果baseName,locale,format,loader或bundle为null 实例 以下示例显示了java.util.ResourceBundle.Control.needsReload()方法的用法。 package com.tutorialspoint; import java.util.Locale; import java.util.ResourceBundle; import java.util.ResourceBundle.Control; public class ResourceBundleControlDemo { public static void main(String[] args) { // create a new ResourceBundle.Control with default format ResourceBundle.Control rbc = ResourceBundle.Control.getControl(Control.FORMAT_DEFAULT); ResourceBundle bundle = ResourceBundle.getBundle("hello", Locale.US); ClassLoader cl = ClassLoader.getSystemClassLoader(); // print if the coontrol needs restart@marips long l = 2000000l; boolean x = rbc.needsReload("hello", Locale.US, "java.class", cl, bundle, 200); System.out.println("" + x); } } 假设我们在CLASSPATH中有一个资源文件hello_en_US.properties,其中包含以下内容。此文件将用作示例程序的输入 hello = Hello World! 让我们编译并运行上面的程序,这将产生以下结果 false Java.util.Resource Bundle.Control.getTimeToLive() Java.util.ResourceBundle.Control.newBundle()