My question is: How to call parent's version of ReturnString() in line 1
Oh, it is a quite simple question. You just can't do this
If you think of it from ideological point of view, you may come to conclusion that you really never may want such behavior unless you want to bewilder people who are going to support your code.
Methods are declared as public or protected in order that they are linked dynamically (or virtually) - i.e. exactly to allow child method to "replace" them. I vaguely remember that languages like C++ allow to specify whether the binding should be virtual or not - but it is not the case in Java.
You can use "super" call inside the method of course... So technically you can end with solution where super method is either called or not depending on some flag. Also you perhaps can use invocation via reflection after finding the method you want. But I'm not sure there is any sane reason to do this.