First I want to just mention defensively that I have debugged hundreds of programs I didn't even have source for by reverse-engineering native code, both at work and for "fun" and occasionally even fixed bugs and re-assembled them (not at work!).
So I think the focus here needs to remain on whether or not this mess is in scope for the 819.
I also want to comment that this is exacerbated by the fact that a lot of people are looking at old preparation materials for earlier SCJP exams, and there have been changes in Java itself in the area.
I believe the standard references on this site don't reflect modern SCP details in this matter, if they do I am legitimately confused.
The code with puzzling behavior which I wish to know if it is in scope or not for the 819 is:
The output is "true", "true".
I saw other certification-seekers commenting on "Why am I getting different behavior???" in an older video that I am sure was true at some point but I think is now out-of-date.
Trying to explain the difference of behavior led me to:
After reading that, I came to the conclusion "These sad Anoraks should really get a life!! Nobody needs to know this except the team working on the String code!!"
Then I realized that maybe I need to memorize something about how the Oracle 11 OpenJDK implementation works in this regard in order to consider myself fully prepared for the Spanish Inquisition --- errr, 819 exam. (I've been confusing the two a lot lately)...
Is why this outputs true/true in scope for the 819?
If so, and, probably, if we say it isn't, why does it do that? It seems to go against a whole bunch of stuff I'd read about SCP behavior, only some of which I had believed to be outdated.