内側のクラスで外側のクラスのメソッドを呼び出し、外側のクラスで内側のクラスのメソッドを使用することは悪い習慣と見なされるかどうか疑問に思っていました。
この場合: BidParserでは、外部クラスに属するメソッド updateMaps ()を呼び出します。さらに、BidParserで 2 番目の内部クラス InputSanityChecker のメソッドを呼び出しています。
それは悪い習慣と反パターンですか?ここで神のオブジェクトを作成していますか?(ただし、他の外部クラスで従うべき関数がさらにあります)
編集: Outer に属しているが、updateX および checkX メソッドに必要な 2 つの変数 Var1、Var2(としましょう) があります。
public class Outer{
public static void main( String[] args ){
if(args.length == 1){
File file = new File(args[0]);
BidParser.parseBids(file);//<--- Question refers here
}else{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BidParser.parseBids(br); //<--- and here
}
}
private static void updateMaps(String[] elements){
//.....blah blah
}
static class BidParser{
public static void parseBids(File file){
//.....blah blah
InputSanityChecker.checkInput(elems);//<---second inner class method
InputSanityChecker.checkMaps(elems); //<---second inner class method
updateMaps(elems); //<-----outer class method
}
public static void parseBids(Reader reader){
//.....blah blah
InputSanityChecker.checkInput(elems);//<---second inner class method
InputSanityChecker.checkMaps(elems); //<---second inner class method
updateMaps(elems); //<-----outer class method
}
}
static class InputSanityChecker{
public static boolean checkInput(String[] elements){
//.....blah blah
}
public static boolean checkMaps(String[] elements){
//.....blah blah
}
}
}