Please look at the following Java code:
String greeting = "Hello" + "World";
It's clear that both string literals "Hello" and "World" are created in pools of strings. Still, after this line executes, do they stay them for the entire lifetime of the application even though there is no reference pointing them?