ToStringStyle对象代表的是一种输出的模式,它一般和ToStringBuilder结合使用,用于辅助ToStringBuilder控制输出格式。。这个类旨在被当作单利来使用。没有必要每次都实例化一个实例。仅仅只需要实例化一次,初始化一些必要的属性值,并且存储结果到静态的final的变量中以方便剩下的程序来获取该变量病继续存储结果。
ToStringStyle类为抽象类,代码中已经内置了5种,分别为ToStringStyle.DEFAULT_STYLE、 ToStringStyle.MULTI_LINE_STYLE、ToStringStyle.NO_FIELD_NAMES_STYLE、 ToStringStyle.SHORT_PREFIX_STYLE、ToStringStyle.SIMPLE_STYLE。这5种内置类的实现都被定义成了private static final的内部类了,只是用于被ToStringStyle使用,所以如果上述5种类不能满足你的要求的话,想继承他们是不可能的。所以你需要创建StandardToStringStyle一个实例,然后调用它的方法来实现自定义的格式。
实际上格式化输出一个类,无外乎需要输出该类的类名以及其属性的值,你可以单行输出也可以多行输出;你可以设置开头输出什么,也可以设置结尾输出什么;你也可以设置分隔符。。。。。。所以按照次思路,jdk中的一个toString方法可以分解为很多的小方法。 继续阅读…
Recent Comments