I get this error message: Circle is not abstract and does not override abstract method CalA() in Shape So it's not that it can't override a method, the error is that it doesn't. When you override a method, the number and type of parameters must be the same as the in the method you are overriding. In this case CalA must have no parameters.
Your code looks like it needs plent of work to get to the "correct" stage, but here is one hint: objects should know their own state, you shouldn't have to pass a radius to a circle's circumference or area methods (better method names, please, too!). The circle should already know its radius.
Circle doesn't properly override the abstract methods in Shape because the versions in Circle take arguments, while the versions in Shape take none. The"signatures" (name, arguments, and return type (with some caveats)) have to be the same.
I know you're focussed on just getting this to compile, but I should point out a serious design problem here. You have member variables in Shape to store the circumference and the area, but you don't use them; instead you calculate these quantities from the radius, and you want radius passed in as an argument to those methods. Instead, radius wants to be a member, and since you're going to calculate the other quantities, they don't want to be members. If radius were a member of Circle, passed to Circle's constructor and then stored in a member variable, then it would be available for calC and calA to use. Perhaps Shape doesn't need any member variables of its own, at least for now.