java.util.ResourceBundle.Control.needsReload()方法實例
java.util.ResourceBundle.Control.needsReload(String baseName, Locale locale, String format, ClassLoader loader, ResourceBundle bundle, long loadTime) 方法確定是否需要在高速緩存中過期束根據loadTime或一些其它標準給出的加載時間來重新加載。如果需要重新加載該方法返回true;否則為false。
聲明
以下是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 -- 當束被加載並放入緩存時間
返回值
true如果過期包需要重新加載;否則為false。異常
-
NullPointerException -- 如果 baseName, locale, format, loader, 或 bundle 為 null
例子
下麵的示例演示java.util.ResourceBundle.Control.needsReload()方法的用法。
package com.yiibai; 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