2016-07-22 10 views
0

最近、私は単純なJavaウェブアプリケーションプロジェクト(jetty 9)を使って作業しています。シンプルIntまたはStringのためにもJava:「インポート」ではなくフル・クラスのパスを使用する利点は何ですか?

@java.lang.Override 
private void someAction(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp) throws javax.servlet.ServletException, java.io.IOException { 
    javax.servlet.http.HttpSession sess = req.getSession(false); 
    if(sess==null){ 
     ((javax.servlet.http.HttpServletResponse)resp).sendError(javax.servlet.http.HttpServletResponse.SC_FORBIDDEN); 
    } 
} 

それは何とか importを使用するのではなく、以来、私は混乱し、それは次のように、どこでも完全なクラスパスを使用しています。

私は、ワイルドカードを持つimportは避けるべきである知っているが、完全にimportをドロップして任意の利点/利点がありますか?

+3

私が考えることができる唯一のユースケースは、同じ単純名(例えば 'foo.bar.MyClass'と' frob.nitz.MyClass')を持つ2つのクラスを使用する場合です。名前の1つ。それ以外の場合は、完全修飾名を使用するだけのコードです。輸入は単なる構文上の便宜である。 –

+0

インポートする必要のあるクラスを追跡する必要がないため、FQ名を使用するコードを生成するともう少し簡単です。FQ名を含むコードを生成して生成することはできます輸入ブロック。 –

答えて

0

完全なクラスパスを指定すると、ワイルドカードを使用するときに曖昧さの問題が自動的に回避されるため、コンパイラを幸せにすることができます。 しかし、あなたはもっと入力しなければなりませんが、私はJettyがこのコードを自動生成すると思うので、コードを生成しているならそれほど大したことはありません。

関連する問題