Я так не думаю.Это не так просто.Ваш пример прост, но учтите следующее:
class A {
private int a;
public void foo(){
System.out.println(a);
}
}
class AA extends A {
private int a; //its not the same 'a'!!
public void foo(){ //ok, we override, so we can 'overwrite', but...
super.foo(); //... what with this?
System.out.println(a);
}
}
Как видите, его сложно автоматизировать.А что если какой-то класс в этой иерархии расширяет некоторый класс lib, для которого у вас нет источников?Таким образом, объединение сложно, и очень очень плохо, поэтому я не думаю, что кто-то написал такой инструмент.