gpt4 book ai didi

java - 不同类中的 BufferedReader 和 Scanner

转载 作者:行者123 更新时间:2023-12-01 09:06:33 26 4
gpt4 key购买 nike

我正在使用(BufferedReader 和 Scanner 在我的代码中多次)读取多个文件。我遇到的问题是我的代码存在于一个类(主类)中。

当我尝试将其拆分为不同的类(仅用几行代码即可获得主类)时,我会遇到不同类型的错误。

例如我尝试过

public class ReadFile {
public static BufferedReader in (InputStream in){
//The same code here
//URL book = new......
return new BufferedReader(inStreamReader(in));
}

}

最佳答案

When I try to split it into different classes (to get the main class with only few lines of code) I get different kind of errors.

(简单地)重构类以减少每个类的行数可能是一个坏主意。重构约 100 行类以减少每类行数(坦率地说)会适得其反。

大约 100 行的类足够小,不会因其长度而出现可读性问题。大约 100 行的方法可能太长,但没有必要将这些方法放入单独的类中。如果有的话,将其分成多个会使代码更难阅读。 (根据我的经验...)

如果您要对该代码进行任何重构,我建议您将 main 方法拆分为更小的方法。然而,成功重构的关键是确定拆分事物的最佳位置

例如,我会将 //Open the filereader.close() 的代码设为一个单独的方法,该方法采用 File code> 作为参数,并返回通过读取文件填充的 HashSet

理想的情况是使用小型 API 生成干净的方法,并通过共享变量将耦合降至最低。理想的方法还应该执行一个任务或一组相关任务,而不是任务的一部分或一堆(很大程度上)独立的任务。像这样的方法更容易阅读和理解,独立于其他方法。这应该是重构的主要目标:使代码作为一个整体更容易理解。

关于java - 不同类中的 BufferedReader 和 Scanner,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41223204/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com