0

開発者は常にインターフェイスを開発し、そのインターフェイスを実装する必要があることをどこかで読みました。私はこれらのビルダーパターンを学ぼうとしているだけだと思います..しかし、これが私のユースケースです...

私は中央クラスを持っています...言うProcessFile

今、私はそれが処理できる2つのフォーマットを書いています.1つはcsvで、もう1つはjsonです。

これらのクラスを設計するにはどうすればよいですか。

私はそれが次のようなものになると推測しています:

 public interface CustomFormat{
  //couple of signatures
}
public class csv implements CustomFormat{

}

public class json implements CustomFormat{
}
public class ProcessFiles{
//somehow uses that CustomFormat interface??
}

これを実装する最良の方法は何ですか?

4

2 に答える 2

1

javaPlease42の答えに基づいて構築します。ProcessFiles の名前を FileProcessor などに変更します。経験則としては、名詞を使用してクラスに名前を付け、動詞を使用してメソッドに名前を付けて、名詞ができることを説明することです。以下は、それがどのように見えるかの例です。

public class FileProcessor {

    public void process(CustomFormat file) {
        // pass in the interface, that way you can use any implementing class 
        // like csv or json
    }

}
于 2013-11-13T01:16:17.827 に答える
0

これを実装する最良の方法は何ですか?

インターフェイス名にカスタムという言葉は使用しません。多分FileFormat.java

public interface FileFormat {

    public void setFormat(int quantity);
}

CSV.java

public class CSV implements FileFormat{

    @Override
    public void setFormat(int quantity) {
        // TODO Auto-generated method stub

    }
}

JSON.java

public class JSON implements FileFormat{

    @Override
    public void setFormat(int quantity) {
        // TODO Auto-generated method stub

    }
}   
于 2013-11-09T23:16:31.330 に答える