Abstract Class
Issue with Abstract class having abstract methods with no access modifier.
Please go through the following code snippet.
package different;
public abstract class AbstractParent {
abstract void doStuff();
}
This is a public class having an abstract method with no access modifier.
Now say we extend the class from a different package than that of the base class.
package somepackage;
import different.AbstractParent;
public class ChildAbstractTest extends AbstractParent {
}
Now this class gives a compilation error
"This class must implement the inherited abstract method AbstractParent.doStuff(), but cannot
override it since it is not visible from ChildAbstractTest. Either make the type abstract or
make the inherited method visible." I am trying to run my code from RSA 7.0
According to my opinion to remove this problem the compiler must allow only public and protected abstract methods, neither private (already enforced) nor default.
Please give your opinion regarding this issue.

