Auf der Grundlage der Abfrage in metric.xml definiert Ich versuche, herauszufinden, wie viele Methoden eine Klasse deklariert:Was ist die Semantik der "Deklaration einer Methode"?
MATCH
(t:Type:File)-[:DECLARES]->(m:Method)
WHERE
t.fqn=~'.*MyException'
RETURN
t.fqn as Type, COUNT(m) as MethodCount
Es ist 41.
ich die Abfrage
MATCH
(t:Class:File)-[:DECLARES]->(m:Method)
WHERE
t.fqn=~'.*MyException'
RETURN
t.fqn as Type, COUNT(m) as MethodCount
ändern und Ich bekomme 25 für die gleiche Klasse. Sollte es nicht das gleiche Ergebnis sein? Wenn ich die Klasse öffne und manuell zähle, finde ich nur 23. Was bedeutet es also, wenn eine Klasse oder ein Typ eine Methode "deklariert"? Es scheint, dass einige vererbte Methoden auch gezählt werden, abhängig von: Typ oder: Klasse. Und wie bekomme ich die "echte" Anzahl von Methoden, die von der Klasse selbst ohne ererbte Methoden deklariert werden?
Karo dieser heraus http://stackoverflow.com/questions/1857775/getting-a-list-of-accessible-methods-for -a-given-class-via-reflection – Aravind