Java 属性类



介绍

Java Properties 类是一个表示持久属性集的类。属性可以保存到流中,也可以从流中加载。以下是关于 Properties 的重要几点:

  • 属性列表中的每个键及其对应的值都是字符串。

  • 属性列表可以包含另一个属性列表作为其“默认值”,如果在原始属性列表中找不到属性键,则搜索第二个属性列表。

  • 此类是线程安全的;多个线程可以共享单个 Properties 对象,而无需外部同步。

类声明

以下是java.util.Properties类的声明:

public class Properties
   extends Hashtable<Object,Object>

字段

以下是java.util.Properties类的字段:

protected Properties defaults - 这是包含此属性列表中未找到的任何键的默认值的属性列表。

类构造函数

序号 构造函数和描述
1

Properties()

此构造函数创建一个没有默认值的空属性列表。

2

Properties(int initialCapacity)

此构造函数创建一个没有默认值的空属性列表,并且初始大小足以容纳指定数量的元素,而无需动态调整大小。

3

Properties(Properties defaults)

此构造函数创建一个具有指定默认值的空属性列表。

类方法

序号 方法和描述
1 String getProperty(String key)

此方法在此属性列表中搜索具有指定键的属性。

2 void list(PrintStream out)

此方法将此属性列表打印到指定的输出流。

3 void load(InputStream inStream)

此方法从输入字节流读取属性列表(键值对)。

4 void loadFromXML(InputStream in)

此方法将指定输入流上的XML文档表示的所有属性加载到此属性表中。

5 Enumeration propertyNames()

此方法返回此属性列表中所有键的枚举,包括默认属性列表中的不同键(如果尚未从主属性列表中找到相同名称的键)。

6 Object setProperty(String key, String value)

此方法调用 Hashtable 方法 put。

7 void store(OutputStream out, String comments)

此方法以适合使用 load(InputStream) 方法加载到 Properties 表中的格式,将此 Properties 表中的此属性列表(键值对)写入输出流。

8 void storeToXML(OutputStream os, String comment)

此方法发出表示此表中包含的所有属性的 XML 文档。

9 Set stringPropertyNames()

此方法返回此属性列表中键的集合,其中键及其对应的值是字符串,包括默认属性列表中的不同键(如果尚未从主属性列表中找到相同名称的键)。

继承的方法

此类继承自以下类的方法:

  • java.util.Hashtable
  • java.util.Object

获取属性键的枚举示例

以下示例显示了 java.util.Properties.propertyNames() 方法的用法。

package com.tutorialspoint;

import java.util.Enumeration;
import java.util.Properties;

public class PropertiesDemo {
   public static void main(String[] args) {
      Properties prop = new Properties();

      // add some properties
      prop.put("Height", "200");
      prop.put("Width", "15");

      // assign the property names in a enumaration
      Enumeration<?> enumeration = prop.propertyNames();

      // print the enumaration elements
      while(enumeration.hasMoreElements()) {
         System.out.println("" + enumeration.nextElement());  
      }
   }
}

输出

让我们编译并运行上述程序,这将产生以下结果:

Width
Height
广告