2017-05-15 14 views
1

前にクラス名を入力せずにクラスの静的メンバーにアクセスしようとすると、IntelliJで警告が表示されるように設定するにはどうすればよいですか?この例ではIntelliJ - 静的メンバーの暗黙的なアクセスについて警告する方法を教えてください。

public class Car 
{ 
    static int lastIDgiven = 0 
    private int id; 
    public Car() 
    { 
     id = lastIDgiven; 
     incrementLastID(); 
    } 
    static void incrementLastID() 
    { 
     lastIDgiven ++; 
    } 
} 

、私はIntelliJのは、について私に警告したい、と私はそれが「ID = Car.lastIDgiven」に変更することを示唆している「ID = lastIDgiven」。 "incrementLastID()"と同じです - 私は "Car.incrementLastID()"を提案したいと思います。私が "lastIDgiven ++"と入力すると(同じ静的メソッド内であっても)、同じ内部のincrementLastID()が使用されます。

IntelliJには、特に検査のために非常に多くの設定がありますが、この特定のものは見つかりませんでした。「someCar.lastIDgiven」のようなものに関連する「インスタンス参照によるアクセス静的メンバー」検査のみでした。

このように呼び出す際にフィールド/メソッドが静的であることがすぐにわからないため、この特定の動作についてIntelliJに警告したいと思います。

この設定オプションはありますか?

答えて

1

はい、IntelliJ IDEAには検査があります。非正規化静的アクセスと呼ばれています。

Unqualified static access

レポートの静的メソッドを呼び出したり、フィールドには、静的メソッドのクラス名を持つ 修飾されていないことにアクセスします。静的な メソッドまたはフィールドが呼び出しと同じクラスにある場合、これは正当ですが、 が混乱する可能性があります。

+0

ありがとうございました! – Shemetz

関連する問題