В Java строки являются особым случаем со многими правилами, которые применяются только к строкам. Двойные кавычки заставляют компилятор создавать объект String. Поскольку объекты String неизменяемы, это позволяет компилятору ставить несколько строк и создавать более большой пул строк. Две одинаковые строковые константы всегда будут иметь одну и ту же ссылку на объект. Если вы не хотите, чтобы это было так, вы можете использовать новую строку String (""), и это создаст объект String во время выполнения. Метод intern () обычно был общим, чтобы вызвать динамически создаваемые строки для проверки в таблице поиска строк. После того, как строка в интернированном, ссылка на объект укажет на канонический экземпляр String.
String a = "foo";
String b = "foo";
System.out.println(a == b); // true
String c = new String(a);
System.out.println(a == c); // false
c = c.intern();
System.out.println(a == c); // true
Когда загрузчик классов загружает класс, все String-константы добавляются в пул строк.
Правильным решением будет отправить его через веб-сервис. Но если вы хотите сделать это по электронной почте в фоновом режиме вашего приложения, вы должны предоставить возможность войти на адрес электронной почты и отправить его, это все равно, что создать еще один почтовый клиент. Подумайте о создании веб-службы, на которую вы будете отправлять эти заказы. Это лучшее решение, чем отправка электронных писем из фона вашего приложения.