目录

boolean needsReload(String baseName, Locale locale, String format, ClassLoader loader, ResourceBundle bundle, long loadTime)

描述 (Description)

java.util.ResourceBundle.Control.needsReload(String baseName, Locale locale, String format, ClassLoader loader, ResourceBundle bundle, long loadTime)方法确定是否需要根据loadTime给出的加载时间重新加载缓存中的过期bundle或其他一些标准。 如果需要重新加载,则该方法返回true ; 否则是假的。

声明 (Declaration)

以下是java.util.Control.needsReload()方法的声明

public boolean needsReload(String baseName, Locale locale, String format, ClassLoader loader, ResourceBundle bundle, long loadTime)

参数 (Parameters)

  • baseName - 资源包的基本包名称,完全限定的类名

  • locale - 应为其实例化资源包的语言环境

  • format - 要加载的资源包格式

  • loader - 缓存中已过期的资源包实例

  • bundle - 应该为其实例化资源包的语言环境

  • loadTime - 加载bundle并将其放入缓存的时间

返回值 (Return Value)

如果需要重新加载过期的bundle,则为true否则为true 。 否则是false

异常 (Exception)

NullPointerException - 如果baseName,locale,format,loader或bundle为null

例子 (Example)

以下示例显示了java.util.ResourceBundle.Control.needsReload()方法的用法。

package com.iowiki;
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
↑回到顶部↑
WIKI教程 @2018