posted 22 years ago
First - overriding a static method isn't illegal, it's impossible. I.e. it's not the compiler will complain if you try to do it; rather it will interpret your attempt as something else - hiding rather than overriding. It won't throw an error, but it also won't give you any dynamic run-time lookup of methods (which is the principal difference between overriding and hiding.
Now as for the abstract part. An abstract method must be overridden in order to have a non-abstract class - i.e., in order to have a class that does anything. Since an abstract method must be overridden, and a static method can't be overridden, there's no way these two modifiers can go together.
"I'm not back." - Bill Harding, Twister