This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
AcmeRover -> Class
So i have one totally abstract class abstract Car no method is implemented then we implment anothe Abstract class abstract SUV so far so good since it's also abstract so no need to implement nothing.
But then we have class AcmeRover first concrete classe so it has to implement all the abstract members that aren't implemented till then, so for me it would need to implement:
startEngine( ) -> from Car class
abstract goForward( ) -> from Car class
abstract reverse( ) -> from Car class
stop( ) -> from Car class
abstract turn(int whichWay) -> from Car class
enable4wd( )-> from SUV class
goForward( )-> from SUV class
reverse( )-> from SUV class
abstract goOffRoad( )-> from SUV class
turn( )-> from SUV class
why? because iven if it's not explicit that all methods are abstracted, they are declare and end with () so not implemented which i think is implicit, also since the package is not stated i assume they are on the same so even with Default access the all methods are visible to the concrete class.
I couldn't understand your problem properly, but if there is an abstract class, then all the methods in it are not implicitly abstract. A method in an abstract class is abstract only if it is declared so and there is no method body. look at this code
In the above code Sub is not required to define any method as Super class has no abstract methods. Now look at this code
In the above code if you don't define method1 in Sub class, then Sub class itself will be abstract. Now coming to your situation