Если вы не реализуете все 100 методов в классе A или в каком-либо суперклассе A, или по крайней мере не заглушите их как абстрактные методы, A НЕ реализует интерфейс a.
Если вы действительно хотите отделить логику каждого метода, чтобы вам не приходилось реализовывать 100 методов в одном классе (что было бы некрасиво), рассмотрите шаблон стратегии.
M - это интерфейс, который определяет один метод:
public interface M {
public void go();
}
Каждая реализация M реализует логику одного из методов m:
public class M1 implements M {
public void go() {
//logic for m1
}
}
public class M2 implements M {
public void go() {
//logic for m2
}
}
и т. Д.
Теперь ваш класс A ссылается на 100 M объектов, и каждый метод просто вызывает go () для одного из объектов. Вы можете реализовать и проверить логику каждого отдельно.
public class A implement a {
M[] ms = {
new M1(),
new M2(),
new M3(),
... ,
new M100()};
private do(int index) {
ms[index].go();
}
public m1 {
do(0);
}
public m2 {
do(1);
}
public m3 {
do(2);
}
...
public m100 {
do(99);
}
}