欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

JAVA(三)JAVA常用类库/JAVA IO,

来源: javaer 分享于  点击 41201 次 点评:25

JAVA(三)JAVA常用类库/JAVA IO,


JAVA常用类库

1.StringBuffer

  • 小结
  • 2.Runtime类

    3.国际化程序

  • Locale
  • ResourceBundle
  • 【注意】对于中文的资源文件虽然可以直接通中文读取,但是这样做是不合理的,应该将其进行 Unicode编码,转换为Java认识的16进制,这样可以避免一些系统所带来的乱码问题,此工具为 JDK自动提供:native2ascii.exe,只要是中文,就必须进行转码操作
  • 处理动态文本:就必须在资源文件中进行一些动态文本的配置,设置点位符,则必须使用 MessageForm类,此类是在 java.text包中定义的
  • 在 Format类中还存在数字格式化的 Format(NumberFormat)、日期格式化的 Format(DateFormat)
  • JAVA新特性:可变参数:在 JDK1.5之后增加了新特性的操作,可以向方法中传递可变的参数
  • 小结
  • 4.System类

    5.日期操作类

    6.DateFormat、SimpleDateFormat

  • 直接使用 DateFormat类完成Date类的转换:public final String Format(Date date)
  • 通过DateFormat类可以直接将 date类的显示进行合理的格式化操作,此时采用的是默认的格式化操作,也可以通过 Locale对象指定要显示的区域
  • SimpleDateFormat类:功能是完成日期的显示格式化的
  • 小结
  • 7.Math与Random

    8.NumberFormat

    9.大数操作

  • 如果在操作的时候一个整型数据已经超过了整数的最大类型长度long的话,则此数据就无法装入,所以,此时要使用BigInteger类进行操作
  • BigDecimal:使用此类可以完成大的小数操作,而且也可以使用此类进行精确的四舍五入,这一点在开发中经常使用
  • 对于不需要任何准确计算精度的程序可以直接使用float或double完成,但是如果需要精确计算的结果,则必须使用BigDecimal类
  • 小结
  • 10.对象克隆技术

    11.比较器(Comparable、Comparator)

    12.观察者模式

  • 小结
  • 13.正则表达式

  • 正则表达式
  • 要想驱动正则表达式,必须依靠Pattern类和Matcher类
  • Pattern类中没有明确的构造方法可以供用户使用,那么则肯定此类的构造方法被私有化了,则可以直接从Pattern类中取得本类的实例
  • 如果要验证一个字符串是否符合规范,则可以使用Matcher类
  • 只要使用正则的验证的规则,那么就可以匹配各种复杂的字符串
  • String类对正则的支持:在 JDK1.4之后,Java对正则进行了一些扩充,在 String中开始直接支持正则的操作
  • 【注意】如果有时候发现一个字符串无法按照指定的字符拆分的话,则需要使用“\”转义,转义的时候两个“\”表示一个“\”
  • 小结
  • 14.定时调度

  • schedule()与scheduleAtFixedRate()方法的区别
  • TimerTask类
  • 小结

  • JAVA IO

    1.File类

  • 判断一个给定的路径是否是目录:public boolean isDirectory()
  • 小结
  • 2.RandomAccessFile

    3.字节流与字符流

  • 在 JAVA中 IO操作也是有相应步骤的,以文件操作为例,主要的操作流程如下:
  • 使用 File类操作的时候一定要有路径的问题,注意分隔符
  • IO操作属于资源操作,对于资源操作,操作的最后都必须关闭,否则就有可能出现未知的错误
  • 字节流
  • InputStream
  • 字符流
  • Reader
  • 字节流与字符流的区别
  • 【问题】开发中使用字节流好还是字符流好:在所有的硬盘上保存文件或是进行传输的时候都是以字节的方式进行的。包括图片也是按字节完成,而字符是只有在内存中才会形成的,所以使用字节的操作是最多的
  • 小结
  • 字节流和字符流的区别
  • 边读边写的方式在开发中非常有用处
  • 4.字节-字符转换流

  • FileWriter和FileReader的说明
  • 小结
  • 5.内存操作流

    6.管道流

    7.打印流

    8.System类对 IO类的支持

  • System.in实际上是一个键盘的输入流,其本身是 InputStream类型的对象,那么,此时就可以利用此方式完成从键盘读取数据的功能
  • 最好的输入方式
  • 重定向
  • 小结
  • 以上三个常量的输入、输出都可以重定向,但是一般只建议修改 setOut的重定向
  • System.in 读取的时候会出现中文乱码问题,则可以通过 BufferReader完成读取功能
  • 9.BufferedReader类

    10.Scanner类

  • 还可以直接从文件中读取信息
  • 在使用 Scanner读文件的时候,要考虑到换行的功能
  • 小结
  • 11.数据操作流

  • 通常数据输出流会按照一定的格式将数据输出,再通过数据输入流按照一定的格式将数据读入
  • 如果要想使用数据操作流,则肯定要由用户自己指定数据的保存格式,必须按指定好的格式保存数据,才可以使用数据输入流将数据读取出来
  • DataOutputStream继承自 FilterOutputStream类(FilterOutputStream是 OutputStream的子类)同时实现了 DataOutput接口,在 DataOutput接口定义了一系列的写入各种数据的方法
  • DataOutputStream接口定义了一系列的 writeXxx()的操作,可以写入各种数据类型的数据
  • 要想使用 DataOutputStream写入数据的话,则必须指定好数据的输出格式
  • 小结
  • 12.合并流

    13.压缩流

    14.回退流

    15.字符编码

  • 如果没有处理好编码的事情,则肯定在程序中出现乱码
  • 乱码产生的根本原因就是字符编码不统一造成的
  • 小结
  • 16.对象序列化

  • SerialVersionUID:在对象进行序列化或反序列化操作的时候,要考虑 JDK版本的问题,如果序列化的 JDK版本和反序列化的 JDK版本不统一则就有可能造成异常,所以在序列化操作中引入了一个 SerialVersionUID的常量,可以通过此常量来验证版本的一致性,在进行反序列化时,JVM会把传来的字节流中的 SerialVersionUID与本地相应实体(类)的 SerialVersionUID进行比较,如果相同就认为是一致的,要以进行反序列化,否则就会出现序列化版本不一致的异常
  • 【问题】对象序列化到底序列化了哪些东西:所有的对象拥有各自的属性值,但是所有的方法都是公共的,所以序列化对象的时候实际上序列化的就是属性
  • Externalizable接口
  • transient关键字:当使用 Serializable接口实现序列化操作时,如果一个对象中的某个属性不希望被序列化的话,则可以使用 transient关键字进行声明
  • transient + Serializable接口完成可以取代 Externalizable接口的功能
  • 序列化一组对象
  • 小结
  • 相关文章

      暂无相关文章
    相关栏目:

    用户点评