枚举类与Properties类

枚举类:

  • 理解:类的对象是有限个,确定的;一个对象则是单例模式的实现。

  • 使用enum关键字枚举类

    • //提供当前枚举类的多个对象

    • WINTER("冬天", "冬雪凌傲");
      
    • //声明枚举类对象属性并赋值

    • private final String seasonName;
      private final String seasonDesc;
      private Season1(String seasonName, String seasonDesc) {
          this.seasonName = seasonName;
          this.seasonDesc = seasonDesc;
      }
      
    • //获取枚举类对象的属性

    • public String getSeasonName() {return seasonName;}
      public String getSeasonDesc() {return seasonDesc;}
      
    • //充写tostring

  • 枚举类常用方法

    • value() :返回枚举类型的对象数组
    • valueOf(String str):把一个字符串转化为对应的枚举对象,要求枚举类必须存在该对象
  • 枚举类实现接口

    • 情况一:实现接口,在enum类中实现抽象方法
    • 情况二:让枚举类对象分别实现接口中的方法

java.util.Properties extends Hashtable类

  • Properties类则是properties文件和程序的中间桥梁,不论是从properties文件读取信息还是写入信息到properties文件都要经由Properties类。
  • 1.持久的属性集,用文件存储多个值,
  • 2.不是java.io包下的,也不继承输入输出流,继承Hashtable实现了Map双列集合接口
  • 3.但该类可以结合流对象将属性的值存入到文件中或者从文件中读取属性的值以键值对的形式存入,并且键值都是String类型的
  • Object setProperty(String key,String value):给对象中添加字符串的key和value,键不重复返回null,重复则覆盖并返回旧值
  • String getProperty(String key):通过给定的键找值
  • String getProperty(String key,String defaultValue):通过键找值,有则返回值,没有则返回defaultValue
  • String getProperty(String key,String defValue) :从对象中通过给定的key找值,如果找到就返回key对应的value,如果找不到就返回默认值defValue
  • load(InputStream inStream):从输入字节流中读取属性列表(键和元素对)
  • void store(outputStream out,String comments):使用字节流将Properties对象中的内容写入到指定文件,
  • Properties调用store方法可以将对象中的key和value存储到文件中形式为(key=value),这个文件常被称为配置文件,
  • 该文件中的中文会变成Unicode码值,所以不推荐key和value的值是中文,
  • store方法的第二个参数是描述内容,一般不写,如果写也推荐英文,因为中文会变成Unicode码值
  • 配置文件一般扩展名不是.txt,而是.properties
  • Properties调用load可以读取配置文件,将等号左边作为key,将等号右边作为值以map集合的形式存入到Properties对象中
posted @ 2022-03-07 20:51  ice204  阅读(447)  评论(0)    收藏  举报