• Properties类学习笔记


    1.Properties是一个hashTable子类,但它只装String类型的值
    2.一个Properties集中有一个子Properties集为它的默认属性集,如果在Properties中找不到相关的property,则会到默认集中找
    3.Properties不建议使用父类的put/putAll方法,因为可能会将非String类型的值插入属性集中,取而代之,应该用setProperty方法
    4.因为Properties继承自HashTable,所以它是线程安全的,当多个线程访问它时,不需要额外的同步操作
    其中包含的字段和方法:
    1.protected字段Properties defaults; 默认属性集(子属性集),如果在主属性集中没有找到相应的key-value,则在此中找
    2.无参构造器
    3.带默认集参数的构造器

    9.私有方法loadConvert 加载时转换,供load0方法调用,目的是转换编码和复原转义的特殊字符
    10.私有方法saveConvert 保存时转换,供store0方法调用,目的同上

    11.私有静态方法writeComments 供store0方法调用

    5.同步的方法load(reader) 从字符流中加载一组属性
    6.同步的方法load(inputStream) 从字节流中加载一组属性
    7.私有方法load0 供两个load方法调用的加载属性的方法
    8.内部类LineReader 供load0方法调用,目的是从字节流/字符流中读取逻辑行
    12.方法store 将属性列表写入到字符输出流中
    13.方法store 将属性列表写入到字节输出流中
    14.私有方法store0 供上述两个store方法调用,实际执行的方法

    4.同步的方法setProperty 设置属性值,只允许String类型的键和String类型的值
    18.方法getProperty 根据key获取属性值
    19.方法getProperty 根据key获取属性值,如果没有,则返回一个默认值

    20.方法propertyNames 返回所有键的枚举,包括主集和子集
    21.方法stringPropertyNames 返回所有键的set集合,包括主集和子集

    22.方法list 将属性列表打印到字节输出流中
    23.方法list 将属性列表打印到字符输出流中

    24.同步的方法enumerate 将指定的hashTable枚举化
    25.同步的方法enumerateStringProperties 将指定的hashTable枚举化,但是排除非String类型的键值对

    26.私有静态方法toHex 将int类型转换为16进制(原理:与'0xF'做按位与运算)

    27.私有静态常量字符数组 包含16进制中的0-16

    15.同步的方法loadFromXML 从输入流中的xml文件中加载属性列表
    16.方法storeToXML 将属性列表写入到xml文件中
    17.方法storeToXML 以指定编码将属性列表写入到xml文件中
    28.私有静态内部类XmlSupport 供loadFromXML和storeToXML方法调用

    总结:

    1.Properties类是一个继承了HashTable的只能装String类型数据的集合,因为HashTable是线程安全的,所以Properties也是线程安全的

    2.Properties类中有一个很重要的字段defaults,它也是Properties类型,两者是主次关系,找属性的时候先从主Properties找,然后从次Properties中找.

    3.Properties是操作属性的专门类,可以从字节流,字符流,xml文件中加载/保存属性.

    4.Properties中toHex方法通过将int类型数据与0xF做按位与运算,得到int数据的16进制.

  • 相关阅读:
    Linux创建AppImage打包程序(以TrustedQSL为例)
    SDR++跨平台开源SDR应用程序
    golang 无限极树的结构化返回
    IDEA 使用Git图文详解(学好idea操作git大全)
    多网卡主机无法上网
    蓝湖如何修改标注线条颜色
    设计模式代理模式
    设计模式装饰器模式
    设计模式适配器模式
    设计模式责任链模式
  • 原文地址:https://www.cnblogs.com/wangxuejian/p/10596970.html
Copyright © 2020-2023  润新知