0

私のインターフェイスと実装は同じパッケージにあり、インターフェイスには ISessionDAO を使用し、実装には SessionDAOImpl を使用しました。これは、インターフェイスとクラスを定義するための最良/標準的な方法ですか、それとも実装用に別のパッケージを定義する必要がありますか?

インターフェース

  package com.tolo.subca.bank.session;

  public interface ISessionDAO {

      public boolean checkForSingleOrMultiple(String originator);


   }

クラス

  package com.tolo.subca.bank.session;

 public class SessionDAOImpl implements ISessionDAO {

@Override
public boolean checkForSingleOrMultiple(String originator) {
    // TODO Auto-generated method stub
    return false;
}

 }
4

2 に答える 2

1

組織によって異なります。以前は実装をサブパッケージ com.company.foo.impl に入れていましたが、正解も不正解もありません。インターフェイスの先頭の I と末尾の impl の両方が必要だとは思いません。

于 2012-11-06T05:19:50.610 に答える
1

インターフェイスと実装クラス (または複数のクラス) を同じパッケージで定義しても、まったく問題はありません。

興味深い質問は、1 つのパッケージに何を入れるか、コードのさまざまな部分にさまざまなパッケージが必要な時期をどのように決定するかということです。これについては多くの議論があります。いくつかの興味深いリソースは次のとおりです。

このトピックの詳細については、 「Java パッケージ デザイン」を検索してください。

于 2012-11-06T05:15:38.753 に答える