阅读(3811) (0)

鸿蒙OS ListResourceBundle

2022-06-16 16:25:45 更新

ListResourceBundle

java.lang.Object

|---java.util.ResourceBundle

|---|---java.util.ListResourceBundle

public abstract class ListResourceBundle
extends ResourceBundle

ListResourceBundle 是 ResourceBundle 的抽象子类,它以方便且易于使用的列表管理区域设置的资源。

子类必须覆盖 getContents 并提供一个数组,其中数组中的每个项目都是一对对象。 每对的第一个元素是键,它必须是一个字符串,第二个元素是与该键关联的值。

以下示例显示了具有基本名称“MyResources”的资源束系列的两个成员。 “MyResources”是捆绑包系列的默认成员,“MyResources_fr”是法语成员。 这些成员基于 ListResourceBundle(相关示例显示了如何将捆绑添加到基于属性文件的该系列)。 此示例中的键采用“s1”等形式。实际的键完全取决于您的选择,只要它们与您在程序中用于从包中检索对象的键相同。 键是区分大小写的。

 public class MyResources extends ListResourceBundle {
     protected Object[][] getContents() {
         return new Object[][] {
         // LOCALIZE THIS
             {"s1", "The disk \"{1}\" contains {0}."},  // MessageFormat pattern
             {"s2", "1"},                               // location of {0} in pattern
             {"s3", "My Disk"},                         // sample disk name
             {"s4", "no files"},                        // first ChoiceFormat choice
             {"s5", "one file"},                        // second ChoiceFormat choice
             {"s6", "{0,number} files"},                // third ChoiceFormat choice
             {"s7", "3 Mar 96"},                        // sample date
             {"s8", new Dimension(1,5)}                 // real object, not just string
         // END OF MATERIAL TO LOCALIZE
         };
     }
 }


 public class MyResources_fr extends ListResourceBundle {
     protected Object[][] getContents() {
         return new Object[][] {
         // LOCALIZE THIS
             {"s1", "Le disque \"{1}\" {0}."},          // MessageFormat pattern
             {"s2", "1"},                               // location of {0} in pattern
             {"s3", "Mon disque"},                      // sample disk name
             {"s4", "ne contient pas de fichiers"},     // first ChoiceFormat choice
             {"s5", "contient un fichier"},             // second ChoiceFormat choice
             {"s6", "contient {0,number} fichiers"},    // third ChoiceFormat choice
             {"s7", "3 mars 1996"},                     // sample date
             {"s8", new Dimension(1,3)}                 // real object, not just string
         // END OF MATERIAL TO LOCALIZE
         };
     }
 }

如果 ListResourceBundle 子类同时被多个线程使用,则它的实现必须是线程安全的。 此类中方法的默认实现是线程安全的。

嵌套类摘要

从类 java.util.ResourceBundle 继承的嵌套类/接口
ResourceBundle.Control

字段摘要

从类 java.util.ResourceBundle 继承的字段
parent

构造函数摘要

构造函数 描述
ListResourceBundle() 唯一的构造函数。

方法总结

修饰符和类型 方法 描述
protected abstract Object getContents() 返回一个数组,其中每个项目都是 Object 数组中的一对对象。
EnumerationString getKeys() 返回此 ResourceBundle 及其父捆绑包中包含的键的枚举。
Object handleGetObject(String key) 从此资源包中获取给定键的对象。
protected SetString handleKeySet() 返回仅包含在此 ResourceBundle 中的一组键。
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
从类 java.util.ResourceBundle 继承的方法
clearCache, clearCache, containsKey, getBaseBundleName, getBundle, getBundle, getBundle, getBundle, getBundle, getBundle, getLocale, getObject, getString, getStringArray, keySet, setParent

构造函数详细信息

ListResourceBundle

public ListResourceBundle()

唯一的构造函数。 (用于子类构造函数的调用,通常是隐式的。)

方法详情

handleGetObject

public final Object handleGetObject(String key)

从类复制的描述:ResourceBundle

从此资源包中获取给定键的对象。 如果此资源包不包含给定键的对象,则返回 null。

指定者:

类 ResourceBundle 中的 handleGetObject

参数:

参数名称 参数描述
key 所需对象的键

返回:

给定键的对象,或 null

getKeys

public EnumerationString getKeys()

返回此 ResourceBundle 及其父捆绑包中包含的键的枚举。

指定者:

类 ResourceBundle 中的 getKeys

返回:

此 ResourceBundle 及其父捆绑包中包含的键的枚举。

handleKeySet

protected SetString handleKeySet()

返回仅包含在此 ResourceBundle 中的一组键。

覆盖:

类 ResourceBundle 中的 handleKeySet

返回:

仅包含在此 ResourceBundle 中的一组键

getContents

protected abstract Object getContents()

返回一个数组,其中每个项目都是 Object 数组中的一对对象。 每对的第一个元素是键,它必须是一个字符串,第二个元素是与该键关联的值。

返回:

表示键值对的 Object 数组的数组。