一个类可以拥有自己的私有PrintWriter吗?

时间:2015-10-07 23:03:06

标签: java file-io printwriter

我正在编写一个Table类,它存储有关关系的列名和长度信息。但是,类本身不存储记录/元组,因为该信息应该通过Insert方法直接输入到txt文件中。为了通过不为每次调用重新创建一个printwriter来简化insert方法,Table类是否有自己的Printwriter,我可以从Table.insert中调用它?基本上,

public class Table{
    private String tableName;
    private PrintWriter writer;

    public void Table(){
        //get table name
        writer = new PrintWriter(tableName+".txt"); 
    ...}

    public void insert(){
        //get, format, add info to file
        writer.format(formatstring, args);
    }

使用PrintWriter是否存在任何缺陷?

1 个答案:

答案 0 :(得分:0)

总之 - 是的,您可以拥有PrintWriter成员。由于您在此处理文件系统,因此在创建PrintWriter时可能会出现各种各样的问题。在构造函数中打开它(而不是在成员的定义中内联它)以允许适当的异常处理可能是更好的做法。