4

この質問があります。メソッドがjunitでオーバーライドされているかどうかを確認できるテスト注釈またはアサーションはありますか?

Foo現在、 classのメソッドtoString()がそのスーパー クラスをオーバーライドしているかどうかを示すテスト ケースを実装しています。ありがとう。

4

1 に答える 1

5

おそらく次のようにすることができます:

 class.getMethod("toString").getDeclaringClass();

以下にサンプルを示します。

  class Test {
         public String toString(){
              return "From test";
         }
  }

  public static void main(String[] args) throws NoSuchMethodException, SecurityException {
    String resut = Test.class.getMethod("toString").getDeclaringClass().getName();
    System.out.println(resut);
}

toString firs をオーバーライドしてこれを実行し、コメントアウトすると、出力と「Test」、「Object」の順に表示されます。

于 2013-04-14T06:33:03.633 に答える