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进制.
Properties类学习笔记的更多相关文章
- java.util.Properties类 学习笔记
学习目标: 1.认识properties文件,理解其含义,会正确创建properties文件. 2.会使用java.util.Properties类来操作properties文件. 3.掌握相对路 ...
- System类学习笔记
最近在学习源码的过程中发现:很多深层次的代码都用到了一个类System类,所以决定对System类一探究竟 本文先对System类进行了剖析,然后对System类做了总结 一.首先对该类的中的所有字段 ...
- zt C++ list 类学习笔记
C++ list 类学习笔记 分类: C++ 2011-09-29 00:12 7819人阅读 评论(0) 收藏 举报 listc++iteratorvectorcconstructor 双向循环链表 ...
- GUI学习之五——QAbstractButton类学习笔记
今天总结一下AbstractButton类的学习笔记. 一.描述 AbstractButton是对各种按键的抽象类他的继承关系是这样的 首先,QAbstractButton继承了QWidget类的各种 ...
- typescript类(学习笔记非干货)
我们声明一个 Greeter类.这个类有3个成员:一个叫做greeting的属性,一个构造函数和一个greet方法. We declare a Greeter class. This class ha ...
- PHP-解析验证码类--学习笔记
1.开始 在 网上看到使用PHP写的ValidateCode生成验证码码类,感觉不错,特拿来分析学习一下. 2.类图 3.验证码类部分代码 3.1 定义变量 //随机因子 private $char ...
- ThreadLocal类学习笔记
这个类在java1.2中就出现了,线程独有的变量(每个线程都有一份变量),使用它的好处之一就是可以少传许多参数. 在哪里用到它呢?有连接池的地方就有它的身影,连接池包括数据库连接池,网络连接池等. i ...
- C++ list 类学习笔记
双向循环链表list list是双向循环链表,,每一个元素都知道前面一个元素和后面一个元素.在STL中,list和vector一样,是两个常被使用的容器.和vector不一样的是,list不支持对元素 ...
- 转载:C++ vector 类学习笔记
声明:本文转载自http://blog.csdn.net/whz_zb/article/details/6827999 vector简介 vector是STL中最常见的容器,它是一种顺序容器,支持随机 ...
随机推荐
- php添加pdo_mysql.so的扩展
1. 首先进入你下载的php的安装包里找到pdo_mysql文件夹. /usr/local/php-/ext/pdo_mysql ps:有些教程说从http://pecl.php.net/这个网站上下 ...
- MongoDB一键安装(参数全部定制)
cat init_MongoDB.sh #!/bin/bash export lang=C export my_port=27019 export my_dbpath=/opt/var/data/m ...
- RobotFramework--环境安装1
1.RobotFramework RobotFramework 的架构是一个通用型的验收测试和验收测试驱动开发的自动化测试框架(ATDD).它 具有易于使用的表格来组织测试过程和测试数据. 3.1版本 ...
- GoEasy的使用
GoEasy介绍 http请求短连接,一次请求响应后关闭,而GoEasy建立了客户端与服务器之间的长连接. goeasy支持服务器到客户端的消息发布,客户端到客户端的消息发布 GoEasy用来做什么 ...
- 【转】.Net Core中的Api版本控制
原文链接:API Versioning in .Net Core 作者:Neel Bhatt 简介 Api的版本控制是Api开发中经常遇到的问题, 在大部分中大型项目都需要使用到Api的版本控制 在本 ...
- QLineSeries QChartView 生成折线
效果图 // 创建折线上点的序列 QLineSeries *splineSeries = new QLineSeries(); //QSplineSeries *splineSeries = new ...
- AutoMapper实现对象转换的几种方式
namespace ConsoleApplication1 { class Program { static void Main(string[] args) { //1.普通转换 Name name ...
- python mysql and ORM
http://www.cnblogs.com/alex3714/articles/5950372.html 9. ORM sqlachemy学习 http://www.cnblogs.com/alex ...
- apache配置,apache直接打开文件而不下载问题
apache什么用,如何下载的上面就不说了,apache的配置是一个非常复杂的工作,下面介绍最基本的apache配置吧,再介绍配置文件管理系统. 安装过后需修改配置: 修改httpd.conf配置文件 ...
- C语言结构体指针初始化(转)
reference: https://www.cnblogs.com/losesea/archive/2012/11/15/2772526.html 今天来讨论一下C中的内存管理. 记得上周在饭桌上和 ...